2012-01-04 72 views

回答

1

您可以在該方法內更改對象屬性(標誌),以指示該方法正在執行中。

從外面,你可以做object.getBusyFlag()來決定。

但是,如果您嘗試使該方法線程安全,則可以考慮同步關鍵字。

+0

因爲它是一個Singleton,所以在方法運行時期間這個bean被鎖定。 getBusyFlag()將在主方法退出後運行。 – 2012-01-04 17:02:47

+0

使用靜態變量「busy」而不是函數來解決鎖定問題。我猜也可以使用bean管理的併發來修復它。感謝您的回答! – 2012-01-04 17:17:27

1

肯特是對的。而且,如果「標誌」只是一個布爾值,則可以將其聲明爲「volatile」並且不要使用「synchronized」。