国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

多線程精要

2019-11-14 11:05:57
字體:
來源:轉載
供稿:網友

目錄

中斷

線程池

=====

======

======

======

======

======

======

======

======

======

中斷

中斷是通過調用Thread.interrupt()方法來做的. 這個方法通過修改了被調用線程的中斷狀態來告知那個線程, 說它被中斷了. 對于非阻塞中的線程, 只是改變了中斷狀態, 即Thread.isInterrupted()將返回true; 對于可取消的阻塞狀態中的線程, 比如等待在這些函數上的線程, Thread.sleep(), Object.wait(), Thread.join(), 這個線程收到中斷信號后, 會拋出InterruptedException, 同時會把中斷狀態置回為false.調用該方法結束之后, 中斷狀態會變成false

參考1

線程池

在一些場景中,也需要要設置一個不同的最小線程數。比如當一個系統最大需要同時處理2000個任務,而平均任務數量只是20個情況下,就需要將最小線程數設置成20,而不是等于其最大線程數2000。此時如果還是將最小線程數設置的等于最大線程數的話,那么閑置線程(Idle Thread)占用的資源就比較可觀了,尤其是當使用了ThreadLocal類型的變量時,會在每個線程的context中存儲該變量的副本。

ReentrantLock是通過內部的Sync變量實現其鎖機制(分為公平和非公平,都是繼承自AbstractQueuedSynchronizer),AbstractQueuedSynchronizer提供了狀態位+隊列的機制實現了鎖機制


上一篇:單詞接龍

下一篇:數組和循環

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 曲水县| 铁力市| 保康县| 梁河县| 读书| 临安市| 尼勒克县| 岳阳县| 绥化市| 西乡县| 望谟县| 楚雄市| 仪陇县| 沅陵县| 长乐市| 左权县| 靖远县| 灵寿县| 马尔康县| 冷水江市| 隆回县| 外汇| 临潭县| 清徐县| 肇庆市| 黎川县| 毕节市| 福泉市| 鲁甸县| 丹凤县| 麟游县| 玉田县| 敦煌市| 拉孜县| 斗六市| 大足县| 镇原县| 金华市| 泸溪县| 蒲城县| 敖汉旗|