- 论坛徽章:
- 0
|
server.py
import socket,time
port = 5000
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
server_socket.bind(("", port))
server_socket.listen(5)
bufsize = 4096
while True:
print 'accept'
sock,address = server_socket.accept()
data = sock.recv(bufsize)
while data != '':
print data
print 'r'
data = sock.recv(bufsize)
print 'e:data:%s' % data
print 'sock closed by peer'
print 'write'
a = 0
string = 'nihao,client'
while True:
a += sock.send(string)
print 'write finish: %d' % a |
client.py
import socket,sys,time
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('localhost',int(sys.argv[1])))
client_socket.send(sys.argv[2])
#client_socket.shutdown(2)
client_socket.close()
time.sleep(1000) |
客户端必须是先调用close,所以无法从客户端来验证server第一次写是否是真正的写成功,但是server send的返回值来看,确实是写成功了的
[ 本帖最后由 tianqio 于 2009-6-9 15:43 编辑 ] |
|