第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

SocketChannel 是否必須在應用程序關閉時顯式關閉?

SocketChannel 是否必須在應用程序關閉時顯式關閉?

繁華開滿天機 2021-09-15 15:04:07
假設我們有一個打開的SocketChannel. 在終止應用程序之前明確關閉它是否重要?換句話說,如果我們不這樣做,是否有留下未關閉系統(tǒng)資源的風險?
查看完整描述

2 回答

?
慕斯王

TA貢獻1864條經(jīng)驗 獲得超2個贊

假設您的操作系統(tǒng)是現(xiàn)代多用戶操作系統(tǒng),則不存在退出進程而不關閉通道、文檔、文件描述符的風險,這將使資源處于未關閉狀態(tài)。用戶空間進程擁有的所有資源在進程退出時由操作系統(tǒng)適當處理(即,如果需要,則關閉1)。

這適用于用戶進程是運行 Java 應用程序的 JVM 以及任何其他類型的用戶進程。


1 - 這比“一切都已關閉”要復雜一些。例如,在 UNIX/Linux 中,子進程可以從其父進程繼承打開的“文件”句柄,因此可以想象兩個或多個用戶進程可以共享一個網(wǎng)絡套接字。操作系統(tǒng)將使用引用計數(shù)處理這種情況。


查看完整回答
反對 回復 2021-09-15
?
侃侃爾雅

TA貢獻1801條經(jīng)驗 獲得超16個贊

當您的進程終止并且所有進程的資源將被釋放時,套接字將自動關閉。

但是如果這是一個 TCP 套接字,那么發(fā)生這種情況時一般不會通知另一端。就像有人拔掉了網(wǎng)線一樣。

如果您在同一臺機器上的進程之間進行通信,那么您可能希望改用管道,當您的一端自動關閉時,它會向另一端提供可靠的通知。

如果您想生成一個進程并在父進程宕機時讓它死掉,我建議為此使用一個未命名的管道到子進程 stdin。這是最簡單的事情,而且非??煽?。


查看完整回答
反對 回復 2021-09-15
  • 2 回答
  • 0 關注
  • 294 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號