(duration time.Duration)
| 379 | } |
| 380 | |
| 381 | func (s *socks5Dialer) updateAverageConnectTime(duration time.Duration) { |
| 382 | s.stats.mu.Lock() |
| 383 | defer s.stats.mu.Unlock() |
| 384 | if s.stats.AverageConnectTime == 0 { |
| 385 | s.stats.AverageConnectTime = duration |
| 386 | } else { |
| 387 | s.stats.AverageConnectTime = (s.stats.AverageConnectTime + duration) / 2 |
| 388 | } |
| 389 | } |
| 390 | |
| 391 | // ProbeProxyBehavior 探测代理是否存在"全回显"问题 |
| 392 | // 通过连接一个几乎肯定不可达的地址,并尝试发送数据来判断代理行为 |