[問題] mmap example

看板Python作者 (reindeer)時間12年前 (2013/07/30 16:31), 編輯推噓0(005)
留言5則, 1人參與, 最新討論串1/1
請教一下 我有在 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)

07/31 08:09, , 1F
mmap會快似乎是減少了很多開銷(讀硬碟,paging等等)
07/31 08:09, 1F

07/31 08:10, , 2F
以前用sqlite3寫資料庫的時候,用mmap可以快數十倍到百倍
07/31 08:10, 2F

07/31 08:11, , 3F
當然主要是因為寫的太爛所以才有那麼大的空間給mmap提升效能
07/31 08:11, 3F

07/31 08:14, , 4F
如果你只是要一個程序把字串丟給另一個,其實用socket比較方
07/31 08:14, 4F

07/31 08:16, , 5F
便,不用polling也不會丟失資訊,字串不大速度應該也能接受
07/31 08:16, 5F
文章代碼(AID): #1HztdH_n (Python)
文章代碼(AID): #1HztdH_n (Python)