func (c *Conn) SetDeadline(t time.Time) error {
	if c.err != nil {
		return c.err
	}
	return c.Conn.SetDeadline(t)
}
SetDeadline behave as same as net.Listener
package uwsgi
import (
	"bufio"
	"bytes"
	"encoding/binary"
	"errors"
	"fmt"
	"io"
	"net"
	"net/http"
	"regexp"
	"strconv"
	"strings"
	"time"
)
type Listener struct {
	net.Listener
}
type Conn struct {
	net.Conn
	env     map[string][]string
	reader  io.Reader
	hdrdone bool
	ready   bool
	readych chan bool
	err     error
}
func (c *Conn) Read(b []byte) (n int, e error) {
	if !c.ready && c.err == nil {
		<-c.readych
		c.ready = true
	}
	if c.err != nil {
		return 0, c.err
	}
	if !c.hdrdone {
		n, e = c.reader.Read(b)
		if n == 0 || e != nil {
			c.hdrdone = true
		}
	}
	if c.hdrdone {
		n, e = c.Conn.Read(b)
		c.err = e
	}
	return n, e
}
func (c *Conn) Write(b []byte) (int, error) {
	if c.err != nil {
		return 0, c.err
	}
	return c.Conn.Write(b)
}