Richard Laager wrote: > Use the embedded Perl feature of MIMEDefang and use compile_now() from > SpamAssassin. That way, the SpamAssassin initialization is done once. > fork() on Linux (and Unix in general, I believe) is very lightweight. > The SpamAssassin stuff in memory will be shared by all the threads.
That's the theory. Unfortunately, reality is more brutal. Perl uses reference-counting garbage collection. Which means that if a process even looks at a chunk of data, the reference count gets incremented. Which touches the memory page. Which means no sharing. Embedded Perl helps a bit. But unfortunately, it doesn't help anywhere near as much as it should help because of Perl's #*&$*&#$ reference-counting. Regards, David. _______________________________________________ Visit http://www.mimedefang.org and http://www.roaringpenguin.com MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com http://lists.roaringpenguin.com/mailman/listinfo/mimedefang