成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java線程同步問(wèn)題在實(shí)踐中尋找答案

開(kāi)發(fā) 后端
Java線程同步在不斷的學(xué)習(xí)中有很多的問(wèn)題需要注意。下面的文章希望大家在看完之后對(duì)于Java線程同步有所自己的見(jiàn)解。

Java線程同步需要我們不斷的學(xué)習(xí),在學(xué)習(xí)的時(shí)候我們會(huì)遇到不少的問(wèn)題,其實(shí)我們?cè)谇懊嬷v了為什么要Java線程同步,下面我們就來(lái)看如何才能線程同步。希望我們大家有所收獲。

Java線程同步的基本實(shí)現(xiàn)思路還是比較容易理解的。我們可以給共享資源加一把鎖,這把鎖只有一把鑰匙。哪個(gè)線程獲取了這把鑰匙,才有權(quán)利訪問(wèn)該共享資源。生活中,我們也可能會(huì)遇到這樣的例子。一些超市的外面提供了一些自動(dòng)儲(chǔ)物箱。每個(gè)儲(chǔ)物箱都有一把鎖,一把鑰匙。人們可以使用那些帶有鑰匙的儲(chǔ)物箱,把東西放到儲(chǔ)物箱里面,把儲(chǔ)物箱鎖上,然后把鑰匙拿走。這樣,該儲(chǔ)物箱就被鎖住了,其他人不能再訪問(wèn)這個(gè)儲(chǔ)物箱。(當(dāng)然,真實(shí)的儲(chǔ)物箱鑰匙是可以被人拿走復(fù)制的,所以不要把貴重物品放在超市的儲(chǔ)物箱里面。于是很多超市都采用了電子密碼鎖。)

Java線程同步鎖這個(gè)模型看起來(lái)很直觀。但是,還有一個(gè)嚴(yán)峻的問(wèn)題沒(méi)有解決,這個(gè)同步鎖應(yīng)該加在哪里? 當(dāng)然是加在共享資源上了。反應(yīng)快的讀者一定會(huì)搶先回答。#t#

沒(méi)錯(cuò),如果可能,我們當(dāng)然盡量把同步鎖加在共享資源上。一些比較完善的共享資源,比如,文件系統(tǒng),數(shù)據(jù)庫(kù)系統(tǒng)等,自身都提供了比較完善的同步鎖機(jī)制。我們不用另外給這些資源加鎖,這些資源自己就有鎖。

但是,大部分情況下,我們?cè)诖a中訪問(wèn)的共享資源都是比較簡(jiǎn)單的共享對(duì)象。這些對(duì)象里面沒(méi)有地方讓我們加鎖。讀者可能會(huì)提出建議:為什么不在每一個(gè)對(duì)象內(nèi)部都增加一個(gè)新的區(qū)域,專(zhuān)門(mén)用來(lái)加鎖呢?這種設(shè)計(jì)理論上當(dāng)然也是可行的。問(wèn)題在于,Java線程同步的情況并不是很普遍。如果因?yàn)檫@小概率事件,在所有對(duì)象內(nèi)部都開(kāi)辟一塊鎖空間,將會(huì)帶來(lái)極大的空間浪費(fèi)。得不償失。

于是,現(xiàn)代的編程語(yǔ)言的設(shè)計(jì)思路都是把同步鎖加在代碼段上。確切的說(shuō),是把同步鎖加在“訪問(wèn)共享資源的代碼段”上。這一點(diǎn)一定要記住,同步鎖是加在代碼段上的。

同步鎖加在代碼段上,就很好地解決了上述的空間浪費(fèi)問(wèn)題。但是卻增加了模型的復(fù)雜度,也增加了我們的理解難度。現(xiàn)在我們就來(lái)仔細(xì)分析“同步鎖加在代碼段上”的Java線程同步模型。

首先,我們已經(jīng)解決了同步鎖加在哪里的問(wèn)題。我們已經(jīng)確定,同步鎖不是加在共享資源上,而是加在訪問(wèn)共享資源的代碼段上。

其次,我們要解決的問(wèn)題是,我們應(yīng)該在代碼段上加什么樣的鎖。這個(gè)問(wèn)題是重點(diǎn)中的重點(diǎn)。這是我們尤其要注意的問(wèn)題:訪問(wèn)同一份共享資源的不同代碼段,應(yīng)該加上同一個(gè)同步鎖;如果加的是不同的同步鎖,那么根本就起不到同步的作用,沒(méi)有任何意義。

這就是說(shuō),同步鎖本身也一定是多個(gè)線程之間的共享對(duì)象。

 

責(zé)任編輯:張浩 來(lái)源: 博客園
相關(guān)推薦

2012-08-30 16:24:04

HTML5歐朋W3C

2012-02-23 10:13:08

數(shù)據(jù)中心虛擬機(jī)管理負(fù)載均衡

2012-02-24 09:49:21

虛擬化數(shù)據(jù)中心Citrix

2022-11-26 00:02:00

優(yōu)化器SQL語(yǔ)句

2011-09-05 09:58:02

服務(wù)器存儲(chǔ)虛擬化

2017-06-21 14:16:56

編程程序員開(kāi)發(fā)

2022-12-22 09:00:00

微服務(wù)架構(gòu)

2020-07-29 07:48:55

數(shù)字孿生物聯(lián)網(wǎng)IOT

2023-01-14 22:59:34

2017-05-09 09:26:48

微服務(wù)消息推送

2023-12-06 15:21:16

Java云原生

2024-07-10 14:38:05

2010-03-09 17:32:45

Python數(shù)組

2023-12-28 10:44:20

人工智能ChatGPT

2013-01-21 12:48:46

交互設(shè)計(jì)UI設(shè)計(jì)產(chǎn)品設(shè)計(jì)

2021-06-27 17:07:02

Snapchat QU網(wǎng)絡(luò)協(xié)議網(wǎng)絡(luò)

2022-09-19 08:35:28

Kafka節(jié)點(diǎn)故障

2023-05-31 08:37:06

Java并發(fā)編程

2021-06-03 08:32:52

KubernetesRBACRole

2016-12-19 19:09:08

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: av官网在线 | 99国产精品99久久久久久 | 中文字幕精品视频 | 9久9久9久女女女九九九一九 | 久久国内精品 | 国产高清视频一区二区 | 在线播放中文字幕 | 日韩精品成人免费观看视频 | 黄色片在线免费看 | 一区二区三区电影在线观看 | 欧美一区二区三区免费在线观看 | 久久综合888 | 九九av| 拍真实国产伦偷精品 | 国产伦一区二区三区久久 | 亚洲成人三级 | 日本福利在线观看 | 97人人澡人人爽91综合色 | 欧美性一区二区三区 | 国产精品久久久久久久午夜 | 国产精品中文在线 | 91精品久久久久久久久久小网站 | 伊人久久综合 | 日韩黄色小视频 | 成年免费大片黄在线观看一级 | 久热中文字幕 | 艹逼网 | av免费成人 | 欧美日韩久久精品 | 国产一区二区久久 | 日本超碰在线 | 国产一区二 | 午夜tv免费观看 | 日韩精品一区二区三区 | 日韩黄a| a视频在线 | 欧美日韩中文国产一区发布 | 天天爱天天操 | 精品视频亚洲 | 成人视屏在线观看 | 日韩图区 |