資源簡介
1. 編寫程序,使用兩個線程,一個隊列,
其中一個線程從鍵盤讀取數(shù)據(jù),放入到隊列中,直到讀取的數(shù)據(jù)是字符串quit則結(jié)束,線程的任務(wù)就是循環(huán)讀取數(shù)據(jù)直到特定的字符串quit。另外一個線程,不斷的從隊列中讀取數(shù)據(jù)(該隊列的字符串?dāng)?shù)據(jù)就是另一個線程存入的)然后顯示在控制臺。
要求:(a) 必須使用System.in,InputStreamReader, BufferedReader,Thread,
(b) 必須使用java.util.concurrent.LinkedBlockingQueue.
代碼片段和文件信息
package?five;
import?java.io.BufferedReader;
import?java.io.IOException;
import?java.io.InputStreamReader;
import?java.util.concurrent.linkedBlockingDeque;
public?class?TwoThread?{
public?static?void?main(String[]?args)?throws?IOException?{
//?TODO?Auto-generated?method?stub
final?linkedBlockingDeque?queue=new?linkedBlockingDeque();
new?Thread(){
public?void?run()
{
BufferedReader?reader=new?BufferedReader(new?InputStreamReader(System.in));
String?str=null;
while(true)
{
try?{
str=reader.readLine();
if(“quit“.equals(str))
{
try?{
queue.put(str);
}?catch?(InterruptedException?e)?{
//?TODO?Auto-generated?catch?block
評論
共有 條評論