`
blueskylan
  • 浏览: 98705 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

使用管道流传输数据

阅读更多
import java.io.IOException;
import java.io.PipedOutputStream;

public class Sender extends Thread{ //发送信息(写)
//创建管道输出成员变量
    private PipedOutputStream out=new PipedOutputStream();
   
    public PipedOutputStream getOutputStream(){ //获得输出管道
        return out;
    }
    public void run(){
        String s=new String("Hello,receiver,how are you!");
        try{
            out.write(s.getBytes()); //write() 只能写字节
            out.close();
        }
        catch(IOException e){
        System.out.println(e.getMessage());
        }
    }
}



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

//接收信息(读)
public class Receiver extends Thread {
// 创建管道输入成员变量
private PipedInputStream in = new PipedInputStream();

public PipedInputStream getInputStream() { // 获得输入管道
return in;
}

public void run() {
String s = null;
byte[] buf = new byte[1024];
try {
int len = in.read(buf);
s = new String(buf, 0, len);
System.out
.println("the following message comes from sender:\n" + s);
in.close();
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}




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

public class TestPipe {
public static void main(String args[]){
        try{
        Sender t1=new Sender();
            Receiver t2=new Receiver();
            PipedOutputStream out = t1.getOutputStream();
            PipedInputStream in = t2.getInputStream();
            out.connect(in); //连接两个管道
            //in.connect(out);
            t1.start();
            t2.start();
        }
        catch(IOException e){
        System.out.println(e.getMessage());
        }
    }
}
分享到:
评论

相关推荐

    spark_streaming_of_twitter_data:一个Spark流传输管道,用于使用Twitter API将特定标签的Twitter数据实时摄取到CSV文件中的CSV文件中,然后使用CSV文件创建Hive外部表

    spark_streaming_of_twitter_data Spark流传输管道使用Twitter API将特定主题标签的Twitter数据实时导入到CSV文件的CSV文件中,然后使用CSV文件创建Hive外部表。

    DataEngineering:数据处理管道的存储库

    笔记:- Apache Beam是用于创建批处理和流传输管道的统一框架。 GCP的数据流实现了Beam框架,该框架提供了用于创建批处理和流管道的统一方法。 管道驱动程序:创建管道的程序。 它定义了构成管道的输入,转换和输出...

    经典数据网络电子版下载

    虚拟比特管道是指由物理层实现的不同类型的比特流传输方式,它对外部高层看起来就像一个透明的数据传输管道。《经典数据网络》探讨了实现这种虚拟比特管道的几种方式,例如同步和异步传输模式,以及它们在实际网络...

    node-mergesort-stream:通过管道将许多流传输到此转换流并按顺序输出数据

    归并流 将多个排序流合并为一个排序流。 每个流本身都必须排序。 var mergestream = require ( 'mergesort-stream' ) var toMerge = [ stream1 , stream2 , stream3 , ......mergestream ( function ( value1 , value...

    scipipe:使用Go和命令行的健壮,灵活且资源高效的管道

    支持流传输:在程序之间流传输数据以避免浪费磁盘空间 易于调试:使用可用的Go调试工具或仅使用println() 可移植:将工作流作为Go代码或独立的可执行文件进行分发 项目更新 2020年1月:新的截屏视频: 2019年5月:...

    -Data-Stream-Development-with-Apache-Spark-Kafka-and-Spring-Boot:Packt Publishing使用Apache Spark,Kafka和Spring Boot开发数据流

    您将学到什么在数据流涉及的最强大和最通用的技术上打下坚实的基础:Apache Spark和Apache Kafka 为数据流水线管道构建健壮且干净的架构实施正确的工具,使您的数据流体系结构栩栩如生隔离数据流传输管道中涉及的每...

    网络课件-第三章(数据链路层).pdf

    数据链路层的主要功能包括链路管理、帧同步、流量控制、差错控制、透明比特流传输以及寻址。链路管理涵盖了数据链路的建立、维护和释放过程。帧同步则是通过定义帧的概念来区分数据包的开始和结束,确保数据的正确...

    易变数据流的系统资源配置方法.pdf

    1. **微批量数据流传输机制**:基于用户定义的查询延迟阈值,将数据流分割成微批量进行传输。这种机制减少了频繁配置的必要性,同时在一定程度上保证了服务质量。 2. **多级别管道缓存**:为了对相同配置的数据流...

    使用CameraDS和VC2010采集两路USB摄像头数据显示

    而UVC(Universal Video Class)是一种标准,用于USB设备上的视频流传输,它使得不同制造商的摄像头能够被操作系统识别并以一致的方式工作。 **1. CameraDS与DirectShow** CameraDS是DirectShow框架的一部分,它...

    [课程讲义]计算机网络第三章数据链路层详解.pptx

    数据链路层的基本概念 数据链路层的目标 在物理层提供比特流传输服务的基础上,数据链路层(Data Link Layer)通过在通信的实体之间建立数据链路连接,传送以"帧"为单位的数据,使有差错的物理线路变成无

    Beam:Apache Beam是用于批处理和流传输的统一编程模型

    最终用户:使用现有的SDK编写管道,并在现有的运行程序上运行它。 这些用户希望专注于编写其应用程序逻辑,并使其他所有功能正常工作。 SDK编写者:开发针对特定用户社区(Java,Python,Scala,Go,R,图形等)的...

    Fin-Doc-Thermometer

    流传输管道处理实时数据,跟踪哪些公司吸引了人们的最大关注以及每秒访问的文档总数。 批处理管道根据历史数据生成统计信息,以帮助描述公众在检查文档中的活跃程度。 系统演示视频: 管道 整个系统如下图所示: ...

    Java实验6 输入输出流与文件操作.doc

    Java 输入输出流与文件操作 Java 中的输入输出流(Input/Output Stream)是一种...通过本实验,可以深入理解文件和流的概念,掌握基本流类的使用方法,掌握文件操作的基本方法,熟悉在对象之间通过流传输数据的方法。

    c++ 使用rtsp获取视频流

    在IT行业中,实时流传输协议(RTSP,Real-Time Streaming Protocol)是一种用于控制音视频流媒体的协议,常用于远程监控、在线直播等场景。本文将深入探讨如何使用C++来实现通过RTSP获取视频流。 一、RTSP简介 RTSP...

    steaming_google_cloud

    使用Cloud Functions将数据从Cloud Storage流式传输到BigQuery 这段代码从捕获流事件(将文件上传到Cloud Storage)到执行基本处理,错误处理... 有关如何执行此流传输管道的步骤的更多详细信息,请教程了解如何将 。

    Coolface Source

    JXTA是Sun Microsystems开发的一种开放标准,它提供了P2P网络的基本框架,包括身份验证、广告、发现、管道和流传输等服务。JXTA的核心组件包括:Peers(对等节点)、Pipes(通信管道)、Advertisements(资源广告)...

    Linux文件系统概念解释

    字符设备按字符流传输数据,如键盘和终端;块设备以固定大小的数据块传输,如硬盘和光驱。设备文件允许用户和程序以文件操作的方式与硬件设备交互,如`dd`命令用于复制和转换磁盘内容。 5. **特殊文件(管道文件和...

    Big-Data-Processing-with-Hadoop---A-Complete-Reference-Guide:使用高级Hadoop概念设计,构建和执行有效的大数据策略

    您将学习如何使用Apache Spark设计实时流传输管道以及如何使用Elasticsearch构建高效的企业搜索解决方案。 您还将了解如何使用Apache Superset之类的工具可视化数据。 通过该学习路径,您将精通使用Apache Ambari来...

    live555 海思 监控

    在IT行业中,实时流传输协议(RTSP)是用于视频监控和媒体流传输的重要技术,而Live555是一个开源的C++库,专门用于实现RTSP、RTMP、RTP和RTCP等相关协议,广泛应用于嵌入式系统中。在本项目中,我们将讨论如何在...

Global site tag (gtag.js) - Google Analytics