python网络套接字/多线程锁

#server.py

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("", 8081))
while True:
# Receive up to 1,024 bytes in a datagram
data, addr = s.recvfrom(1024)
print "%s:%s" % (addr,data);
import os;

os.system(data);

-------------------------------

#client.py

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
port = 8081
host = "192.168.1.108"
while True:
 msg = raw_input();
 s.sendto(msg, (host, port));


import thread;

from time import sleep,ctime;

def loop0(c,lock):
    
    for i in range(1):
        print 'start loop 0 at:',ctime();
        sleep(10);
        print 'loop 0 done at:',ctime();
        print "%s" % (c);
    lock.release();
   
def loop1():
    while 1:
        print 'start loop 1 at:',ctime();
        sleep(3);
        print 'loop 1 done at:',ctime();   
        
def main():
    print 'starting at:',ctime();
    lock = thread.allocate_lock();
    lock.acquire();
    
    thread.start_new(loop0,("again loop 0",lock));
    thread.start_new(loop1,());
    
    while lock.locked():True;
    
    print "complete";


if __name__ == '__main__' :
    main();
    
    

-----------------------------------------
 

#pyserver.py

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("", 8081))

import ctypes;
dl = ctypes.windll.LoadLibrary('RedRat_Python.dll');

_init_();

def _init_():
    global g_index;
    global g_database;
    g_index = 0;
    g_database = ".xml";
    
def sendkey():
    ;
    
while True:
    # Receive up to 1,024 bytes in a datagram
    data, addr = s.recvfrom(1024)
    print "%s:%s" % (addr,data);   
    sendkey(data);



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值