私はこの方法を持っています:
public void start()
{
if(!isAclone())
{
...
this.thread.start()
}
else
{
...
this.thread.start()
}
メソッドの 1 つだけを内部で実行します。メソッドをメソッド内if-block
に配置start()
すると、2 回実行されます。この問題を解決するにはどうすればよいですか?
編集
private final AtomicBoolean hasRun = new AtomicBoolean();
...
initializeLogger();
if(!hasRun.getAndSet(true))
{
activateMonitoring();
}
....