> fork() is far less efficient than Windows type threading. fork is a system call under *nix and is handled by the kernel. It is about as efficient as you can get probably because there isn't a single server daemon that doesn't use fork(). If there is I haven't seen it. Code is shared between forked processes and usually the data area is small at the time the fork occurs. This means very little copying. > Notice that unix based OS's have added threading packages, but I've not > seen anything like Windows trying to do fork(). Yes. The trick is that after you do _beginthread() in W* you can't exit the caller application. The program structure is entirely different. A fork() gives you a verbatim copy of the running application with full rights to become a process group leader and to fork itself later, even if the parent has stopped meanwhile. This can go on forever (almost). The protection between the forked child and the parent is very good. It cannot overwrite data or crash the parent. Peter -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body