private void sendExit(int tag, Erlang.Pid from, Erlang.Pid dest, System.String reason) { if (!connected) { throw new System.IO.IOException("Not connected"); } OtpOutputStream header = new OtpOutputStream(headerLen); // preamble: 4 byte length + "passthrough" tag header.write4BE(0); // reserve space for length header.write1(passThrough); header.write1(version); // header header.write_tuple_head(4); header.write_long(tag); header.write_any(from); header.write_any(dest); header.write_string(reason); // fix up length in preamble header.poke4BE(0, header.count() - 4); do_send(header); }