【发布时间】:2013-07-04 12:40:12
【问题描述】:
我正在尝试使用 java 创建从一台计算机到另一台计算机的 10000 个并发 udp 流。它适用于大约 3000-4000 但之后它给了我以下错误。
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
这是我的代码。
【问题讨论】:
-
尝试
ulimit -n并通过ulimit -n <some high number>更新它 -
谢谢,解决了!
-
您好,如何使用 Android Studio 进行设置?
标签: java udp socketexception