in reply to Status and usefulness of ithreads in 5.8.0

My impression is that the core threading code is fairly stable. However, many popular Perl modules are not yet thread safe - DBI is one that I know of. Most pure-Perl modules will be thread safe out of the box but most XS modules will not be, particularily if they access non-thread-safe C libraries underneath.

As far as fork()-vs-threads the main difference is in how the processes communicate. With fork() you can communicate using pipes but it is far from convenient. Threads can share() variables and communicate quickly and easily. Also, under some operating systems threads can be created with lower overhead than fork().


  • Comment on Re: Status and usefulness of ithreads in 5.8.0