国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Java synchronize線程安全測試

瀏覽:111日期:2022-09-02 18:31:22

線程的運行是與當前CPU的資源調度與時間片是有關系的,當一個線程中的執行到某一部分方法的時候輪到另外一個線程來執行相應的代碼,所以還沒有等到第一個線程執行完那么CPU有切換到另外一個線程來運行其相應的代碼,所以這個時候假如操作公共的數據部分就會出現錯誤

為了解決這個問題,可以使用 synchronized 同步代碼塊來對公共部分進行同步操作

在用synchronize關鍵字修飾同步代碼塊時,運行代碼發現不能交替賣票。 以下是初始代碼

package com.itheima.Test;public class Test1a { public static void main(String[] args) { Ticket1a t1=new Ticket1a(); new Thread(t1,'A').start(); new Thread(t1,'B').start(); new Thread(t1,'C').start(); }}class Ticket1a implements Runnable{ int ticket=100; @Override public void run() { synchronized (Ticket1a.class) { while (true) { if (ticket<=0) {break; } try {Thread.sleep(20); } catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace(); }System.out.println(Thread.currentThread().getName()+' sold '+(ticket--)); } } }}

運行結果:

A sold 100A sold 99A sold 98A sold 97A sold 96A sold 95A sold 94A sold 93A sold 92A sold 91...A sold 10A sold 9A sold 8A sold 7A sold 6A sold 5A sold 4A sold 3A sold 2A sold 1

雖然解決了線程的安全問題,但是不能實現三個窗口交替賣票。后來仔細一看,是synchronize關鍵字修飾的代碼塊位置不對,相當于修飾了同步方法。

更改后:

@Override public void run() { while (true) {synchronized (Ticket1a.class) { if (ticket<=0) {break; } try {Thread.sleep(20); } catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace(); }System.out.println(Thread.currentThread().getName()+' sold '+(ticket--)); } } }

這樣就完成了線程安全的小測試。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 亚洲欧美在线观看 | 99久久精品久久久久久清纯 | 亚洲欧美卡通成人制服动漫 | 中文偷拍视频在线观看 | 萌白酱喷水福利视频在线 | 国产美女拍拍拍在线观看 | 波多野结衣视频在线 | 亚洲天堂网在线观看 | 18video9ex欧美生活片 | 日本高清一本二本三本如色坊 | 国产黄色三级 | aa毛片免费全部播放完整 | 日本一区二区三区精品视频 | 美美女高清毛片视频免费观看 | 亚洲在线视频免费观看 | 日韩视频在线观看 | 国产在线观看一区二区三区四区 | 香蕉97碰碰视频免费 | 国产大乳喷奶水在线看 | 三级视频在线观看 | 亚洲天堂网在线播放 | 精品国产三级a∨在线观看 精品国产三级a在线观看 | 性久久久久久久久久 | 91伊人久久| 男人天堂手机在线 | 国产精品综合一区二区三区 | 亚洲第一免费网站 | 99日韩| 免费特黄视频 | 精品国产一级毛片 | 日本韩国欧美一区 | 欧美成人免费网在线观看 | 日韩欧美一区二区中文字幕 | 久久99热久久精品91 | 91色综合久久 | 女人张开腿给男人桶爽免费 | 一级片欧美 | 99久久99久久精品免费看子伦 | 久久视屏这里只有精品6国产 | 韩日黄色片| 一区二区在线欧美日韩中文 |