Why net.DialTimeout get timeout half of the time?
<p>This is my test code, I set 6s timeout, but the program execute only for 3s, Why? </p>

<pre><code>package main

import "net"
import "time"
import "fmt"

func main() {
    fmt.Println(time.Now())
    conn, err := net.DialTimeout("tcp", "google.com:80",6*time.Second) // chinese people can't access google
    fmt.Println(time.Now())
    fmt.Println(conn,err)
}
</code></pre>

<p>Test result:</p>

<pre><code>2016-05-18 16:21:31.325340213 +0800 CST
2016-05-18 16:21:34.32909193 +0800 CST
&lt;nil&gt; dial tcp 59.24.3.173:80: i/o timeout
</code></pre>