Java总结---线程(三)

来源:互联网 发布:银联卡网络支付接口 编辑:程序博客网 时间:2024/05/16 13:06

多线程编程专题


使用管道流实现线程间数据传输


public class Test1 {public static void main(String[] args) {PipedInputStream pin = new PipedInputStream();PipedOutputStream pout = new PipedOutputStream();try {pin.connect(pout);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}Thread t1 = new Sender(pout);Thread t2 = new Receiver(pin);t1.start();t2.start();}}class Sender extends Thread{private DataOutputStream dos;public Sender(PipedOutputStream p){dos = new DataOutputStream(p);}public void run(){try {dos.writeUTF("Hello World");dos.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}class Receiver extends Thread{private DataInputStream dis;public Receiver(PipedInputStream p){dis = new DataInputStream(p);}public void run(){try {System.out.println(dis.readUTF());dis.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}



2.类的同步性和线程安全

即使同步类vector,其方法为同步方法,但无法做到真正的线程安全,例见课本187.

0 0
原创粉丝点击