黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Java多線程編程概述
Java多線程的安全問題
Java多線程同步
Java多線程間的通信
Java線程Lock
Java多線程管理
保障線程安全的設(shè)計技術(shù)
Java鎖的優(yōu)化及注意事項
Java多線程集合
【Java多線程】單例模式與多線程

Java中利用管道實現(xiàn)線程間的通訊

在java.io包中的PipeStream管道流用于在線程之間傳送數(shù)據(jù).一個線程發(fā)送數(shù)據(jù)到輸出管道,另外一個線程從輸入管道中讀取數(shù)據(jù).相關(guān)的類包括: PipedInputStream和PipedOutputStream, PipedReader和PipedWriter。

package com.wkcto.pipestream;

import java.io.IOException;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;

/**
 * 使用PipedInputStream和PipedOutputStream管道字節(jié)流在線程之間傳遞數(shù)據(jù)
 * 北京動力節(jié)點老崔
 */
public class Test {
    public static void main(String[] args) throws IOException {
        //定義管道字節(jié)流
        PipedInputStream inputStream = new PipedInputStream();
        PipedOutputStream outputStream = new PipedOutputStream();
        //在輸入管道流與輸出管道流之間建立連接
        inputStream.connect(outputStream);

        //創(chuàng)建線程向管道流中寫入數(shù)據(jù)
        new Thread(new Runnable() {
            @Override
            public void run() {
                writeData(outputStream);
            }
        }).start();

        //定義線程從管道流讀取數(shù)據(jù)
        new Thread(new Runnable() {
            @Override
            public void run() {
                readData(inputStream);
            }
        }).start();
    }

    //定義方法向管道流中寫入數(shù)據(jù)
    public static void writeData(PipedOutputStream out ){
        try {
            //分別把0~100之間的數(shù)寫入管道中
            for (int i = 0; i < 100; i++) {
                String data = "" + i;
                out.write( data.getBytes() );       //把字節(jié)數(shù)組寫入到輸出管道流中
            }
            out.close();            //關(guān)閉管道流
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //定義方法從管道流中讀取數(shù)據(jù)
    public static void readData(PipedInputStream in ){
        byte[] bytes = new byte[1024];
        try {
            //從管道輸入字節(jié)流中讀取字節(jié)保存到字節(jié)數(shù)組中
            int len = in.read(bytes);       //返回讀到的字節(jié)數(shù),如果沒有讀到任何數(shù)據(jù)返回-1
            while ( len != -1 ){
                //把bytes數(shù)組中從0開始講到的len個字節(jié)轉(zhuǎn)換為字符串打印
                System.out.println( new String(bytes, 0 , len));
                len = in.read(bytes);       //繼續(xù)從管道中讀取數(shù)據(jù)
            }
            in.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
package com.wkcto.pipestream;

import java.io.IOException;
import java.io.PipedReader;
import java.io.PipedWriter;
import java.io.PrintWriter;

/**
 * PipedReader與PipedWriter字符管道流
 * 北京動力節(jié)點老崔
 */
public class Test2 {
    public static void main(String[] args) throws IOException {
        //先創(chuàng)建字符管道流
        PipedReader reader = new PipedReader();
        PipedWriter writer = new PipedWriter();
        //在輸入管道流與輸出管道流之間建立連接
        reader.connect(writer);

        //創(chuàng)建一個線程向管道流中穿入數(shù)據(jù)
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    for (int i = 0; i < 100; i++) {
                        writer.write(  "data--" + i + "--" +  Math.random() + "\n");
                    }
                    writer.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }).start();
        //開啟另外一個 線程從管道流中讀取數(shù)據(jù)
        new Thread(new Runnable() {
            @Override
            public void run() {
                char [] charArray = new char[1024];
                try {
                    int len = reader.read(charArray);
                    while (len != -1 ){
                        System.out.print( String.valueOf(charArray, 0, len));
                        len = reader.read(charArray);
                    }
                    reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }).start();
    }
}
全部教程
主站蜘蛛池模板: 免费观看一级欧美大 | www在线小视频免费 xh98hx国产在线视频 | 国产在线一卡二卡 | 91亚洲国产成人久久精品网站 | 国产精品久久久久精 | 色网站综合 | 性欧美极品另类 | 91麻豆传传媒波多野衣久久看 | 一个人在线看的免费视频 | 中文字幕在线看片成人 | 免费一级特黄欧美大片勹久久网 | 欧美精品国产第一区二区 | 中文字幕日韩国产 | 可以免费观看一级毛片黄a 可以免费观看的一级毛片 可以免费观看的黄色网址 可以看的黄色网址 | 高h喷水荡肉爽文各种场合 高h喷水荡肉爽文np欲 | 亚洲精品动漫在线观看 | 欧美成人性性 | 99色视频| 丝袜美腿美女被狂躁动态图片 | h视频在线看 | 欧美mv日韩mv国产mv网站 | 99视频在线观看免费 | 国内精自品线一区91 | 国产视频你懂的 | 色网站免费视频 | 日韩欧美一及在线播放 | 欧美亚洲国产精品久久第一页 | 欧洲成人在线观看 | 亚洲欧美日韩中文字幕在线一区 | 国产精品hd| 中国黄色网址 | 亚洲国产日韩a在线播放 | 丝袜足控免费网站xx网站 | 中文字幕在线免费 | 黄色一级a毛片 | 国产二区在线播放 | 欧美视频亚洲视频 | 欧美精品一区二区久久 | 婷婷色综合成人成人网小说 | 女全身裸无遮挡免费毛片 | 色噜噜狠狠成人网 |