進程間通訊的方式 管道 對於管道的讀端關閉,寫端將由於異常而終止 而關閉管道的寫端,則讀端讀到0字節並理解返回。 Linux系統中的read管道會阻塞,直到緩衝區中有數據時便可讀。 所以,若是寫端關閉,代表沒有更多的數據須要交換,read就不必 阻塞,read當即返回0。 Linux的write管道,當讀端關閉,代表讀端並不須要數據了,那麼管道的 寫端會收到一個信號終止。 管道與文件的區別是什麼? ------1----- 文件在磁盤上,當打開文件時才能存在於內存中。 而管道是在內存中直接IO。效率高於文件IO ------2------ 當讀文件時,read不阻塞,有數據可讀,讀取並返回。若到達文件尾 讀到0字節並返回。而讀管道會是read阻塞,直到有數據可讀。 消息隊列 信號量 共享內存