I'd like to suggest a little feature. I think, it's a good idea to send notification emails a little bit delayed if the user who is supposed to receive it is online at the moment.
So if you are online and involved in a discussion (or PC) and someone replies, you'd get a notification email about the new content. But if you are only anyway because you are waiting for a reply, you would not need that notification since you do have the alerts and you are online anyways.
So that mails could be sent immediately if you are not online and if you are, they could be sent when your session timeout has been reached. Maybe a cron job could run every 15 minutes to check that.
This would also save some server resources since emails tend to produce some load.