我实现了一个下载管理器,它工作得很好,除了我注意到一件事,有时在写入文件时线程会阻塞一段时间(50毫秒到最多10秒),我在Android(基于Linux的),我的猜测是,操作系统级别是否有某种缓冲区需要刷新,而我的写入实际上写入了该缓冲区,如果该缓冲区已满,则写入需要等待.
我的问题是可能导致阻塞的原因是什么?
最佳答案
众所周知,IO 是一种“阻塞” Activity ,因此您的问题应该是“当您的程序忙于等待 IO 完成时您应该做什么”
采用一些众所周知的并发策略和基于事件的编程模式是一个好的开始
关于java - 有时写入文件 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14016362/