chore: add tuic-server listener

This commit is contained in:
wwqgtxx
2022-11-28 17:09:25 +08:00
parent cd53e2d4a7
commit 551283c16e
13 changed files with 1063 additions and 330 deletions

View File

@@ -75,7 +75,7 @@ func (t *PoolClient) dial(ctx context.Context, opts ...dialer.Option) (pc net.Pa
return pc, addr, err
}
func (t *PoolClient) Close() {
func (t *PoolClient) forceClose() {
t.dialResultMutex.Lock()
defer t.dialResultMutex.Unlock()
for key := range t.dialResultMap {
@@ -141,6 +141,7 @@ func (t *PoolClient) getClient(udp bool, opts ...dialer.Option) *Client {
}
}
if client.openStreams.Load() == 0 && time.Now().Sub(client.lastVisited) > 30*time.Minute {
client.Close()
next := it.Next()
clients.Remove(it)
it = next
@@ -173,5 +174,5 @@ func NewClientPool(clientOption *ClientOption) *PoolClient {
}
func closeClientPool(client *PoolClient) {
client.Close()
client.forceClose()
}