作者largesperm (reindeer)
看板Python
标题[问题] mmap example
时间Tue Jul 30 16:31:11 2013
请教一下 我有在 google 搜寻 mmap
不过真的是怎麽看的看不透 mmap 的原理
有找到 example 也看不出个所以然
因为 mmap 一开始都还是要去开一个 file
那这样跟直接读写档案有什麽不一样吗
这一点是我最搞不懂的地方
其次就是我要怎麽知道 delphi 使用的 shared memory
跟 python 使用的 shared memory 是同样的
该不会就是靠上一段描述的那个档案吧?
然後因为我是 Python 2.5 没办法用 with
网路上找到的例子几乎都是 with
这点我不知道会不会有很大的影响
我现在想做的事情很单纯
程式 A 是用 delphi 写的
我需要程式 A 一直丢一组字串给我
我现在的处理方式是 程式 A 一直会把字串存到档案 C
Python 这边就是尝试固定每 30ms 去读档案 C (try)
如果档案 C 还在写入 就放弃没关系 (except: pass)
这个方式虽然可行
但是我还是很想知道要怎麽用 mmap 做到这件事情
所以想请问是否能有个 Python 2.5 的例子参考
很简单的就可以了 因为我需要的就是不停的读字串
观念还不是很好 请多多指教
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.69.42.170
※ 编辑: largesperm 来自: 219.69.42.170 (07/30 16:34)
1F:→ os653:mmap会快似乎是减少了很多开销(读硬碟,paging等等) 07/31 08:09
2F:→ os653:以前用sqlite3写资料库的时候,用mmap可以快数十倍到百倍 07/31 08:10
3F:→ os653:当然主要是因为写的太烂所以才有那麽大的空间给mmap提升效能 07/31 08:11
4F:→ os653:如果你只是要一个程序把字串丢给另一个,其实用socket比较方 07/31 08:14
5F:→ os653:便,不用polling也不会丢失资讯,字串不大速度应该也能接受 07/31 08:16