- go func() {
- defer pc.locker().Unlock()
- defer pc.close()
- defer pc.locker().Lock()
- pc.messageWriter.run(pc.t.cl.config.KeepAliveTimeout)
- }()
+}
+
+func (pc *PeerConn) startMessageWriter() {
+ pc.initMessageWriter()
+ go pc.messageWriterRunner()
+}
+
+func (pc *PeerConn) messageWriterRunner() {
+ defer pc.locker().Unlock()
+ defer pc.close()
+ defer pc.locker().Lock()
+ pc.messageWriter.run(pc.t.cl.config.KeepAliveTimeout)