2015-05-14 134 views
0

我有一个多线程应用程序和一个类函数,它应该一次最多运行一个线程。找出多少个线程同时运行一个函数

这应该是我的应用程序设计的情况下,没有同步。

但我得到了一些随机错误,指出两个线程在实例的函数中运行同一时间的情况。

在这种情况下,出于调试目的,是否有办法引发异常?

我可以找到第二个线程与信号量,但我怎么能确定第一个?

+0

你不应该**设计**你的应用程序首先是线程安全的吗? – zubergu

+0

那就是我的目标,我试图找到错误 – wutzebaer

回答

0

我做了一个信号量断点:

if (s.availablePermits() < 1) { 
    System.out.println("Second"); 
} 

这应该停止第二线程,现在我在eclipse调试设置激活suspendVM,现在我可以在这个时候检查所有线程