We’re big fans of ClickToFlash, the Safari plug-in that lets you choose which bits of Flash content, on which Websites, get loaded - blocking everything else. But as good as ClickToFlash is, it can’t protect you from Flash you’ve approved. Those bits of Flash can still hog processor cycles, waste battery life, and lock up your browser.
Apple provided some help with Safari 4, which (in Snow Leopard) separates Safari’s own processes from the processes of browser plug-ins, but the main benefit of this feature is that if Flash crashes, it doesn’t take your browser down with it.
If Flash doesn’t crash, it can still make Safari submit to the Spinning Beachball of Death - even as a devoted user of ClickToFlash, I’ve occasionally found Safari unresponsive thanks to Flash I've approved, or to the cumulative effect of Flash across a number of sites. And approved Flash can still tax your CPU and suck the life out of your battery.
That’s where BashFlash comes in. This utility monitors the Flash process, using a systemwide menu-bar icon to indicate Flash’s CPU use. If Safari is starting to bog down, a quick glance at the menu bar will give you a clue as to whether or not it’s Flash that’s causing the problem: a dimmed BashFlash icon means no Flash content is currently loaded; a black icon means Flash content is loaded but not using much of your processor; a red icon means high CPU use - 30 percent or more - by Flash.
If the BashFlash icon is glowing and Safari is crawling (or you’re concerned that Flash content you’re not actively using is draining your laptop battery), you have a few options for action. If you know which site is responsible - I’m looking at you, horrible, horrible sites based entirely on Flash - you can simply close that tab or window. But you may still want to view the non-Flash content on the offending page, or the problem may be a bunch of Flash content across multiple sites.
In these situations, BashFlash offers a more aggressive alternative: click the BashFlash menu and choose Kill Flash Plugin. As the command name implies, this kills Flash - and just Flash - across all Web pages in Safari, leaving your browser windows and tabs otherwise intact; each bit of Flash content is simply replaced with Safari’s “missing plug-in” icon.
If you want to reload any bit of Flash content, just reload its Web page; only approved Flash content on that page is loaded.
(I would love it if BashFlash could figure out which site is dragging your browser down, and let you kill Flash only on that site; unfortunately, the Flash plug-in runs as a single process, regardless of how many bits of Flash it’s handling.)
As Macworld contributor John Gruber noted previously, BashFlash is a nice complement to ClickToFlash. Since I started using ClickToFlash just over a year ago, Safari has crashed fewer than a handful of times, despite the fact that I regularly have dozens of tabs open. Since I started using BashFlash a couple months back, Safari - or, more accurately, the Flash plug-in no longer monopolises my CPU (or drains my MacBook’s battery) unless I let it.