python server android

来源:互联网 发布:淘宝限制购买怎么解决 编辑:程序博客网 时间:2024/05/20 07:53
#author oyt , thanks very much!
import socket, select, arrayimport threadingimport sysimport getoptdef threadfun(param):    clientsock,clientaddr,conn_port = param        remote = socket.socket(socket.AF_INET, socket.SOCK_STREAM)    remote.connect(("127.0.0.1", conn_port))        while True:        infds,outfds,errfds = select.select([clientsock, remote],[],[])            if clientsock in infds:            buf = clientsock.recv(8196)            if len(buf) == 0:                clientsock.close()                break#                print "error"            remote.send(buf)            continue        if remote in infds:            buf = remote.recv(8196)            if len(buf) == 0:                remote.close()                break            clientsock.send(buf)    returnif __name__ == "__main__":    listen_port = 8000    conn_port = 23946    if len(sys.argv) > 2:        conn_port = int(sys.argv[2])    if len(sys.argv) > 1 :        listen_port = int(sys.argv[1])    server = socket.socket()    server.bind(("", listen_port))    server.listen(1)    while True:        clientsock,clientaddr = server.accept()        t = threading.Thread(target=threadfun, args=((clientsock, clientaddr, conn_port),))        t.daemon = True        t.start()

0 0
原创粉丝点击