看板 PttCurrent 關於我們 聯絡資訊
※ 引述《in2 (聖誕玉兔 *^^*)》之銘言: : 現在的水球作法大概是, : 1.(sender)把資料寫進對方的 shared-memory 內, : 2.(sender)送 SIGUSR1過去 : 3.(receiver)進 SIGUSR1的 handler, : 把資料從 shared-memory寫到 local space , : 把資料 show 出來, : 再 return 回原來的程式 : 我建議可以改成這樣: : 假定現在有一個叫 waterd 的 daemon , : 裡面有所有 connection 的 fd . : 1.(sender)把水球訊息寫一個 message queue到 waterd : 2.(waterd)查出對方的 connection fd, 直接將畫面寫到對方的 fd 上 : (於是 receiver 的畫面就更新) 忽然想到 他有辦法知道我的 b_lines 嗎 不然位置會有問題 :Q : 3.(waterd)寫一份到 receiver 的 shared-memory : 4.(receiver)直到按下 Ctrl-R 或要丟水球的時候, 才把資料從 shm中拿回 local space : 如此可以省掉大量的 SIGUSR1以及進該 handler的時間~ :Q 這是指把收到的水球放在 shm 嗎? 會不會爆炸 ^^; -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 140.112.240.81