From: Donovan A. <al...@Zo...> - 2007-02-13 20:37:39
|
=20 > To enable the concept of cooperative multitasking, I'd prob have to > break up the comms into smaller chunks, and have some form of state > memory for the poe framework to work. This however is not exactly the > straightforward style of coding as one would normally do (though this = is > prob an arguable pt). POE is non-blocking operators + iterators + event loop =3D cooperative = multitasking. > It seems to me that everyone knows how bad threading is for Perl, and > rather than openly admit it, we regress (again, another arguable > position) into cooperative multitasking. IMHO not the right thnig to = do. I think threading in perl is not so bad, but it is still very = situational on where and when=20 you can really use it due to many modules that are not thread safe and = the extreme memory overhead if your threads don't need all of the cloned data. =20 Threads, no matter what language, have their down side. At least in = perl threads you have to be much more involved in mashing global data = (in general) because you have to share it. =20 I recently stumbled across CLONE_SKIP in threads, which may provide a = less bumpy ride=20 on these issues, but untested by me ATM. My current solution is a mixture of cooperative multitasking (event = loop) and parallelism (multiple peer apps using RPC over IPC-Shared = Memory, a message queue, some peer apps are threading). -------------------------------------------------------------------------= Using Tomcat but need to do more? Need to support web services, = security? Get stuff done quickly with pre-integrated technology to make your job = easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache = Geronimo http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D= 121642 = <http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D= 121642>=20 _______________________________________________ wxperl-users mailing list wxp...@li... https://lists.sourceforge.net/lists/listinfo/wxperl-users = <https://lists.sourceforge.net/lists/listinfo/wxperl-users>=20 |