java—jvm(或os)什么时候可以异常关闭文件处理程序?

oyt4ldly  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(250)

我的应用程序运行在apachehama之上,apachehama是用java实现的分布式计算框架。
多个服务器可以向多台机器发出数据拉取请求。我在hadoop中使用rpc使其成为服务器/客户机模型。
当机器收到数据拉取请求时,它会打开文件并
我遇到以下错误:

ERROR org.apache.hama.XXX:java.nio.channels.ClosedByInterruptException
    at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:202)
    at sun.nio.ch.FileChannelImpl.size(FileChannelImpl.java:315)
    at org.apache.hama.FileHandler.openHandler(XXX.java:235)
    ...
    at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:508)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:959)

我使用randomaccessfile类来处理从几gb到几十gb的非常大的文件。错误消息表示文件处理程序被中断关闭。但它并没有确切说明原因。
应用程序代码没有中断特定线程的任何代码行。我怀疑jvm或os正在调用interuppt。
jvm(或os)什么时候可以异常关闭文件处理程序?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题