node.js では、ハーフ オープン ソケットを使用できます。これは、ソケット全体を閉じることなく、ソケットが読み取り専用または書き込み専用になることを意味します。この例:
var net = require("net");
net.createServer({allowHalfOpen:true},function(c){
c.on("data",function(d){
console.log(d+"");
});
c.on("end",function(){
console.log("ended");
c.end("thx");
});
}).listen(888);
var c = net.connect(888,function(){
c.end("hi");
c.on("data",function(d){
console.log(d+"");
});
c.on("end",function(){
console.log("ended");
});
});
出力:
hi
ended
thx
ended
C#でソケットの一方向のみを閉じる方法はありますか? また、ソケットが読み取り可能で書き込み可能ではないか、またはその逆かを知る方法はありますか?