我是一个初学者,我的任务是制作一个基本的聊天应用程序,两个客户端和一个服务器交换字符串,这是destination+message。
我已经写了一些代码,但是当我使用它时,我在另一端得到了这个“具有所有者方法的长监控器争用事件”。
有人能帮我解释一下这是怎么发生的吗?或者有谁能告诉我这是什么原因?
发布于 2015-03-16 18:17:24
它是由一个线程长时间持有监视器/互斥锁,并阻塞其他线程造成的。例如:
synchronized(lock) {
/* do something that takes a long time */
}在这种情况下,"a long time“是100毫秒或更长。(This pull request是添加此检查的位置。)
这是一个警告。但建议您调查一下,因为它可能会导致您的应用程序没有响应。
通常,解决方法是减少应用程序需要保存互斥锁的时间长度。但是,如果看不到你的代码,就很难知道你会怎么做。
https://stackoverflow.com/questions/29073847
复制相似问题