如何处理java.net.SocketException:dispatch / reboot中打开的文件太多了?

时间:2013-02-16 18:00:17

标签: sockets scala future

我有一个方法,它接受一个url并返回一个Promise [Stuff]:

def getStuff(url: String): Promise[Stuff] = Http(...).map(...)

我在一个大的(~1300项)字符串列表中调用它:

Http.promise.all(urls.map(getStuff)).apply

一些承诺正确完成,但大约50个导致“java.net.SocketException:太多打开的文件”。我究竟做错了什么?也许我应该用其他方式来完成这项任务?

1 个答案:

答案 0 :(得分:2)

这是操作系统限制。

请参阅http://wiki.magnolia-cms.com/display/WIKI/Too+Many+Open+Files,例如关于linux