I'm clearly not awake yet (the email did arrive with Ben L.'s update), but:
It looks like it sends out an email regardless of how many minutes have elapsed since the last email.
This is going to get a few forums marked as spammers, because the sheer volume of almost-identical emails sent out could be huge. And imagine subscribing to a big forum topic, only to wake up the next morning to discover 20 emails telling you the topic had been updated. It doesn't seem to scale well for very long and/or frequently updated topics.
Perhaps wait until the user does something on the forums before sending anything other then the first email? But BBPress doesn't seem to record any actions against the user.
Added: A very crude test could only send out an email if the user's last_posted time fell in between the time of this post and the previous post. It's a very approx measure of activity, neither relating directly to the subscribed topic, nor reflecting a visit to only read. And would need some explanation ("you won't be updated again until you post on the forums"). I already don't like that as a solution, but it would put a cap the spamming, while still being somewhat useful as a means of getting the author back to the forum.
Second random thought: Since this function is already looking like something that might need to be turned off, perhaps it should be sitting in bb-plugins?