lock  你使用了它,怎么确定当前线程使用完 怎么释放的txt文件。

解决方案 »

  1.   

    整个系统搜索一下,你能否确定只有这一处会操作这个txt文件?而且你也没有手动打开这个txt文件?!首先确定此时还有没有访问这个文件但是不在lock(this)影响范围内的并行执行代码。
    另外最好不要对this执行lock,对于一个定义为private static object flag = new Object();执行lock更好。对写日志最好事先封装。应该见你使用自己经过检验、用了好几年、经过压力的类。不要让人见你总是临时拼凑一段代码,然后漏洞百出。
      

  2.   

    还有,像这种程序,不要写什么try...catch。平常就应该重视起来自动化测试(每天自动运行上万测试),平时要尽可能早地爆出bug来。平时测试时遇到问题,就应该立刻停下手头的工作,先解决bug问题。如果你平时用try...catch对上级隐藏异常信息,等程序因为逻辑数据错误而在用户面前丢人时,再来csdn问问题,就晚了。