소스 검색

feat: use goroutines to process connections

AkinoKaede 2 년 전
부모
커밋
c439a12d06
2개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 1 1
      app/tun/handler_tcp.go
  2. 1 1
      app/tun/handler_udp.go

+ 1 - 1
app/tun/handler_tcp.go

@@ -67,7 +67,7 @@ func SetTCPHandler(ctx context.Context, dispatcher routing.Dispatcher, policyMan
 				config:        config,
 			}
 
-			handler.Handle(conn)
+			go handler.Handle(conn)
 		})
 
 		s.SetTransportProtocolHandler(tcp.ProtocolNumber, tcpForwarder.HandlePacket)

+ 1 - 1
app/tun/handler_udp.go

@@ -57,7 +57,7 @@ func SetUDPHandler(ctx context.Context, dispatcher routing.Dispatcher, policyMan
 				policyManager: policyManager,
 				config:        config,
 			}
-			handler.Handle(conn)
+			go handler.Handle(conn)
 		})
 		s.SetTransportProtocolHandler(gvisor_udp.ProtocolNumber, udpForwarder.HandlePacket)
 		return nil