On Thu, 11 Nov 2010, Gary Mills wrote: > Isn't the modern design multiple threads, rather than multiple > processes? That seems to me to be the right direction for Cyrus. > It might even make for a simpler design. Ehh... not realy. Multithreading means locking, futexes, and other pains. It also means almost rewriting master, etc. It means VERY painful debugging. Modern design just means high-performance event dispatching. Cyrus can already do pre-fork, so it just needs an update on the connection handling, you don't need to go multithread. Besides, fork()-based designs are much more resilient. -- "One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh ---- Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/