FutureTask源碼分析

這個是核心代碼,首先我們需要知道FutureTask中有一個volatile state全局變量,通過這個值來界定任務是否已經執行完畢 run方法 先判斷state狀態,如果不是NEW說明執行完畢,直接return掉。 後面使用CAS操作,判斷這個任務是否已經執行,這裏FutureTask有個全局的volatile runner字段,這裏通過cas將當前線程指定給runner。 下面主要是這樣操作
相關文章
相關標籤/搜索