Differences between revisions 1 and 2
Revision 1 as of 2004-12-22 10:41:50
Size: 1850
Editor: ZoomQuiet
Comment:
Revision 2 as of 2009-12-25 07:15:31
Size: 1866
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
-- ZoomQuiet [[[DateTime(2004-12-22T10:41:50Z)]]]
[[TableOfContents]]
-- ZoomQuiet [<<DateTime(2004-12-22T10:41:50Z)>>]
<<TableOfContents>>
Line 9: Line 9:
 * from:: [http://blog.huangdong.com] (即将成为历史的HD的个人blog,大家默哀) :)  * from:: [[http://blog.huangdong.com]] (即将成为历史的HD的个人blog,大家默哀) :)
Line 15: Line 15:
 * [http://remoted.sourceforge.net/]  * [[http://remoted.sourceforge.net/]]
Line 18: Line 18:
 * [http://pyro.sourceforge.net]  * [[http://pyro.sourceforge.net]]
Line 21: Line 21:
 * [http://poshmodule.sourceforge.net/]  * [[http://poshmodule.sourceforge.net/]]
Line 24: Line 24:
 * [http://www.xs4all.nl/~walterj//python-ipc/]
 * [http://www.theory.org/~mac4/software/]
 * [[http://www.xs4all.nl/~walterj//python-ipc/]]
 * [[http://www.theory.org/~mac4/software/]]
Line 28: Line 28:
 * [http://www.onlamp.com/pub/a/php/2004/05/13/shared_memory.html]  * [[http://www.onlamp.com/pub/a/php/2004/05/13/shared_memory.html]]
Line 31: Line 31:
 * [http://gigue.peabody.jhu.edu/~mdboom/omi/source/shm_source/shm.html]  * [[http://gigue.peabody.jhu.edu/~mdboom/omi/source/shm_source/shm.html]]

Python多进程处理

-- ZoomQuiet [2004-12-22 10:41:50]

Contents

==参考大全 ==

* from

http://blog.huangdong.com (即将成为历史的HD的个人blog,大家默哀) :)

多进程处理让很多开发人员转向了线程处理的操作,但是,在一些特别的情况下,我们必须考虑两个完全不同的系统间的进程通讯。方法很多,最简单的办法就是通过IPC进行操作了。 这几天我一直在寻找这方面的资源,有所收获后,记载下来,收录归档罢。

RemontD是一个python的进程间解决方案,它可以让你的多个进程共享一个dictionary来进行交互操作。

则是一个类RMI的多台服务器远程过程调用的解决方案,但是它支持在本机调用时使用IPC进行操作。

POSH的作者显然是一个线程的憎恨者,他为PyCon DC 2003贡献了POSH,它使得python的进程间可以共享数据。

显然是两个python的IPC简单包装,你可能在不同的平台上要自己仔细试试了。在表面上,两者都说明自己支持Linux平台的。

伟大的ONLAMP总是会给我惊喜,这是使用PHP来操作共享内存的一个非常好的文章,它甚至将IPC在unix下的使用也说的非常的明白了。

这是一个在两年前就看到的一个python操作共享内存的实现,如果必须从头做起,相信这个原始的代码,可以成为一个很好的参考。

PyCourse (last edited 2009-12-25 07:15:31 by localhost)