2013-07-04 159 views
0

我想創建10000個併發udp流從一臺計算機到另一個使用java。它適用於大約3000-4000,但之後它給我以下錯誤。嘗試創建許多併發UDP流。 - java.net.SocketException太多打開的文件

java.net.SocketException: Too many open files 
    at java.net.PlainDatagramSocketImpl.datagramSocketCreate(Native Method) 
    at java.net.AbstractPlainDatagramSocketImpl.create(AbstractPlainDatagramSocketImpl.java:82) 
    at java.net.DatagramSocket.createImpl(DatagramSocket.java:322) 
    at java.net.DatagramSocket.<init>(DatagramSocket.java:179) 
    at SendThread.<init>(SendThread.java:20) 
    at Client.main(Client.java:9) 

在查看同一個錯誤的其他幾個鏈接後,它顯示linux有一個應用程序可以同時打開多少個文件的限制。我的電腦上的這個限制似乎是無限的。

>ulimit 
unlimited 

這是我的代碼。

https://copy.com/9YwpvpScPDEUITQ8

+0

嘗試'ulimit -n'並通過'ulimit -n <一些高數字>更新它' –

+0

謝謝,它修復了它! – user1348051

回答

0

檢查ulimit -n和使用更新。

相關問題