glaciall / jtt1078-video-server

基于JT/T 1078标准实现的视频转播服务器
Other
297 stars 136 forks source link

长时间推流,会抛出异常 #6

Open zhongren opened 5 years ago

zhongren commented 5 years ago

java.nio.channels.AsynchronousCloseException at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205) at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:216) PublisherManager中的publish方法中的fileChannel.write(byteBuffer)方法会在推流一段时间后抛出异常,是推流的速度太慢,跟不上接收速度的原因嘛

zhongren commented 5 years ago

看到网上有个解释是 如果线程在channel上阻塞,另外一个线程调用了channel的close方法,会导致阻塞在channel上的线程接收到一个AsynchronousCloseException