Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Because that doesn't share memory.


You can share memory in other ways, via mmap or SysV shared memory.

You could imagine an implementation of the Ruby interpreter which kept all the expensive and shareable state (bytcode and class metadata, i suppose) in a shared memory segment, and used spawning to create worker processes with their own process heaps, but sharing that segment.

It would be a lot of work to implement. It would probably be easier just to get Ruby to use threads properly.


> bytcode and class metadata

There's a bit more to it than that, as programs can run code and load data prefork. Pretty important for things like large config files.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: