藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月6日 10:18


關於Socket並發的問題

我寫了一個可以fock出很多進程的server,又寫了fock出150個連接的Client,為什麼啟動的時候,只有頭50個Client和Server建立了連接,而且根本沒有出錯?
是不是在SCO下一個進程fock的子進程數量有限?

關於Socket並發的問題

你可以自己寫一個小程序測試一下
看看是不是fork只能是50個

或是使用DEBUG狀態看哪裡有問題

關於Socket並發的問題

在unix系統中,對於一個用戶環境,系統限制了能夠產生的子進程的數量(不包括被init收養)。一般的控制這個子進程的數量定義為一個宏,可更具實際需要修改這個參數(大多數系統中屬於核心參數的一部分),如hp-unix中由maxuprc決定,maxuprc<=nproc-4,nproc=20+8*MAXUSERS。當然unix系統本身也有對系統所能接受的進程的限制。

關於Socket並發的問題

在unix系統中,對於一個用戶環境,系統限制了能夠產生的子進程的數量(不包括被init收養)。一般的控制這個子進程的數量定義為一個宏,可更具實際需要修改這個參數(大多數系統中屬於核心參數的一部分),如hp-unix中由maxuprc決定,maxuprc<=nproc-4,nproc=20+8*MAXUSERS。當然unix系統本身也有對系統所能接受的所有進程的最大數量的限制。

關於Socket並發的問題

32位的操作系統,一般可以支持4096個進程



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com