Monday, 19 September 2016

Java Tutorial : Java IO (PipedInputStream and PipedOutputStream-V4)


Click here to watch in Youtube :
https://www.youtube.com/watch?v=gIDoKahqSbo&list=UUhwKlOVR041tngjerWxVccw

Click the below Image to Enlarge

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

public class PipedReadWriteDemo
{

    public static void main(String[] args) throws IOException
    {
        PipedInputStream pis = new PipedInputStream();
        PipedOutputStream pos = new PipedOutputStream();
        pos.connect(pis);

        Runnable producer = () -> produceData(pos);
        Runnable consumer = () -> consumeData(pis);
        new Thread(producer).start();
        new Thread(consumer).start();
    }

    public static void produceData(PipedOutputStream pos)
    {
        try
        {
            for (int i = 1; i <= 5; i++)
            {
                pos.write((byte) i);
                pos.flush();
                System.out.println("Writing: " + i);
                Thread.sleep(500);
            }
            pos.close();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }

    public static void consumeData(PipedInputStream pis)
    {
        try
        {
            int num = -1;
            while ((num = pis.read()) != -1)
            {
                System.out.println("Reading: " + num);
            }
            pis.close();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

    }
}
Output
Writing: 1
Reading: 1
Writing: 2
Reading: 2
Writing: 3
Reading: 3
Reading: 4
Writing: 4
Reading: 5
Writing: 5
Click the below link to download the code:
https://sites.google.com/site/ramj2eev1/home/javabasics/JavaIODemo_Pipes_Produce_Consume_App.zip?attredirects=0&d=1

Github Link:
https://github.com/ramram43210/Java/tree/master/BasicJava/JavaIODemo_Pipes_Produce_Consume_App

Bitbucket Link:
https://bitbucket.org/ramram43210/java/src/301d989d72a8b053f20342cfe0bd4a5c143c23aa/BasicJava/JavaIODemo_Pipes_Produce_Consume_App/?at=master

See also:
  • All JavaEE Viedos Playlist
  • All JavaEE Viedos
  • All JAVA EE Links
  • Servlets Tutorial
  • All Design Patterns Links
  • JDBC Tutorial
  • Java Collection Framework Tutorial
  • JAVA Tutorial
  • Kids Tutorial
  • No comments:

    Post a Comment