//在多執行緒的處理中,可以利用runnable描述多個執行緒操作的資源,而thread描述每乙個執行緒物件,於是當多個執行緒
//訪問統一資源的時候如果處理不當就會產生資料的錯誤操作。
//模擬乙個賣票程式,將建立若干個執行緒物件實現賣票的處理操作。
package cn.pjy.demo;
//在多執行緒的處理中,可以利用runnable描述多個執行緒操作的資源,而thread描述每乙個執行緒物件,於是當多個執行緒
//訪問統一資源的時候如果處理不當就會產生資料的錯誤操作。
//模擬乙個賣票程式,將建立若干個執行緒物件實現賣票的處理操作。
class mythread6 implements runnable catch (interruptedexception e)
system.out.println(thread.currentthread().getname() + "賣票, ticket = " + this.ticket --);
}else
} }}public class threaddemo6
//此時的程式將建立三個程式執行緒,並且三個執行緒物件將進行5張票的**,此時的程式進行賣票處理的時候並沒有任何的問題,但這只是一種假象
//模擬賣票中的延遲操作。
}
賣票處理:
執行緒同步問題分析
我們先看乙個例子 1 三個執行緒同時執行乙個物件中的run方法。我的想法是賣100張票,當ticket 0的時候,就不再賣票了,也就是ticket不再減少了。但是執行結果非常奇怪。package com.huai.test public class threadtest1 implements ru...
執行緒同步問題
昨天簡單研究了一點執行緒的同步問題 package com.pb.thread public class waymakethread 建立乙個執行緒,繼承thread類 class mythread extends thread 建立乙個類,實現runable介面,這不是乙個執行緒類 class m...
執行緒同步問題
多個執行緒在執行的過程中的不確定性引起執行結構的不穩定,同時多個執行緒對同一資料的共享操作,造成操作的不完整性,破壞資料。當某個執行緒在操作車票過程中,尚未操作完成時,其他執行緒也參與進來,操作車票,使車票的資料共享,出現執行緒安全問題。那麼可以通過同步 塊和同步方法的方式來解決執行緒安全問題,實現...