文章詳情頁(yè)
java - 單例模式中生成的對(duì)象是否都要是無(wú)狀態(tài)的?
瀏覽:115日期:2023-12-25 17:47:25
問題描述
假設(shè)我2個(gè)線程同時(shí)對(duì)某個(gè)單例模式生成的對(duì)象進(jìn)行操作,也就是操作的是同一個(gè)對(duì)象,那豈不是會(huì)造成此對(duì)象內(nèi)部狀態(tài)的不一致?
問題解答
回答1:單例模式必然伴隨著多線程問題,你可以采用適當(dāng)?shù)逆i機(jī)制來(lái)控制啊,或者ThreadLocal也是一種解決方案,具體問題具體分析,當(dāng)然如果是無(wú)狀態(tài)的類,就不用考慮這么多了。
標(biāo)簽:
java
上一條:java - web項(xiàng)目從jdk1.6升級(jí)到j(luò)dk1.8遇見的問題下一條:java - Spring service中怎么使用當(dāng)前的service對(duì)象,Autowired不成功
相關(guān)文章:
1. python - 《flask web 開發(fā)》一書,數(shù)據(jù)庫(kù)中多對(duì)多關(guān)系的實(shí)現(xiàn)問題?2. 關(guān)于phpstudy設(shè)置主從數(shù)據(jù)庫(kù)3. mysql - 我用SQL語(yǔ)句 更新 行的時(shí)候,發(fā)現(xiàn)全部 中文都被清空了,請(qǐng)問怎么解決?4. centos7 編譯安裝 Python 3.5.1 失敗5. python3.x - python3.5使用pyinstaller打包報(bào)錯(cuò)找不到libpython3.5mu.so.1.0等文件求解?6. phpStudy2017輕巧版mysql無(wú)法啟動(dòng)7. 為什么我輸入了refresh不會(huì)跳轉(zhuǎn)?請(qǐng)教大神支招!8. 為什么顯示數(shù)據(jù)丟失呢9. 為什么我寫的PHP不行10. MySQL在什么情況下會(huì)被堵死?
排行榜

熱門標(biāo)簽