Ok, after a bit of fiddling, I've managed to figure out that this is two problems, not one.
The first is related to a naughty IMAP server which simply stops responding after a certain number of seconds. Unfortunately, this is my workplace's IMAP server, so I can't give you a test environment. Furthermore, the code that would be appropriate to change is in Net::Imap, and thus is not easily accessible by Sup. I've worked around this by making it an unusual source. The second is a large amount of CPU thrashing as Sup parses messages. This is something we can fix, and I hope to do some more poking to help make Sup run faster in this respect. The basic behavior is Sup repeatedly allocates some amount of memory, reallocates it twice (quadrupling it in size to about 4MB), deallocates, and then does it again. I'm running ruby-prof in hopes of tickling this again. Unlike the hung IMAP server, this eventually finishes, but it is extremely obnoxious when it happens and blocks everything else. It commonly occurs when I open an email message. Cheers, Edward _______________________________________________ sup-talk mailing list sup-talk@rubyforge.org http://rubyforge.org/mailman/listinfo/sup-talk