JAVA並發編程

來源:互聯網
上載者:User

標籤:並發

1 推薦資源
blog: 並發編程網-http://ifeve.com/java_multi_thread_programming_1_2/
書籍:JAVA並發編程實踐 http://vdisk.weibo.com/s/aP04X7rRcCoks
2 提綱
並發程式能夠提高多核處理器利用率,加快響應。即便是單核的情況下,並發程式也能有效提高效能。和並發編程對應的是順序編程,順序編程中程式只能按照順序執行。當程式因等待資源阻塞時,整個程式也被迫等待。並發編程能夠在一個任務阻塞的情況下切換到另一個任務,有效提高程式的效能。
有許多方法來實現並發編程,如多進程、函數式編程、多線程。進程自己擁有單獨的記憶體空間,能夠獨立運行而不受其他進程的影響,因此有人把多進程看做並發編程唯一途徑。函數式編程是一種沒有副作用的編程範式。因為 FP 語言不包含任何指派陳述式,變數值一旦被指派就永遠不會改變。而且,調用函數只會計算出結果 ── 不會出現其他效果。因此,FP 語言沒有副作用。Java是採用多線程的方法實現並發編程,線程被認為是“輕量級的進程“。線程之間共用記憶體,線程的建立、消失和環境切換都是輕量級的。但是,使用多線程的引入會帶來安全執行緒、活躍度危險和效能危險。如果是安全意味著”什麼壞事都沒有發生過”,活躍度失效是與之互補的一面“好事最終發生了”而效能意味著“好事很快儘快發生”【JAVA並發編程實踐】。
JAVA多線程提綱

Callable介面和Runnable介面區別:

區別:1Callable使用call()方法,Runnable使用run()方法
2.call方法的原型為public interface Callable
{
V call() throws Exception;
} run方法的原型:
public interface Runnable
{
void call();
}
可分成兩點:
a.call方法有傳回值,run方法沒有傳回值
b.call方法可以拋出被處理的異常,run方法不能拋出異常
3.Runnable介面是java1.1引入的,Callable是java1.5新引入的。

JAVA並發編程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.