Node.js stream Duplex是否仅用于子类化?

Node.js stream Duplex是否仅用于子类化?,node.js,stream,Node.js,Stream,在我的代码中,我需要同时将来自单个源的流媒体直播数据推送到多个客户端,但是这些客户端可能连接或不连接以接收流媒体直播数据。因此,我需要能够同时写入延迟接收客户端的文件 所以我考虑使用Stream.Duplex类,当数据进入时我可以写入这些类,这些类可以被指定的客户机读取。但是,当我创建一个新的双工类并尝试向其写入数据或钩住“数据”事件时,我得到了 [错误:未实现] 错误。那么Stream.Duplex类是否只有子类?有没有更简单的使用方法 我的测试代码: var duplex = require

在我的代码中,我需要同时将来自单个源的流媒体直播数据推送到多个客户端,但是这些客户端可能连接或不连接以接收流媒体直播数据。因此,我需要能够同时写入延迟接收客户端的文件

所以我考虑使用Stream.Duplex类,当数据进入时我可以写入这些类,这些类可以被指定的客户机读取。但是,当我创建一个新的双工类并尝试向其写入数据或钩住“数据”事件时,我得到了

[错误:未实现]

错误。那么Stream.Duplex类是否只有子类?有没有更简单的使用方法

我的测试代码:

var duplex = require( 'stream' ).Duplex;

var myDuplex = new duplex();

myDuplex.on( 'error', function( error ) {
    console.log( error );
} );
myDuplex.on( 'data', function( buffer ) {
    console.log( "Received [%s]", buffer.toString( 'utf8' ) );
} );

// Push the derta
myDuplex.write( new Buffer( "Hello data.", 'utf8' ) );

是的,
Duplex
用于子类化。它意味着一个既可写又可读的流;它没有说明两者之间的任何关系

您最可能要找的是
Transform
是一种更具体的
双工
类型,其中可读部分是从可写部分计算出来的,而
PassThrough
转换
的简单实现