调用socket中recvfrom监听网络端口的程序作为子线程怎样让主线程不卡住
具体:我写了一个用于监听本机端口从而接收发往本机的UDP报文,用到了socket中的recvfrom函数,但是,我想的是设置一个进程,主线程进行界面方面的操作,而让这个程序(socket接收报文)作为一个子线程的形式运行于后台,获得数据之后,将该数据传给这个主线程(设置全局变量),但是,当运行到recvfrom这个函数是,它是一个听的状态,导致子线程阻塞,从而让主线程也阻塞,界面就卡着像死机一样,但是当接收到UDP报文的时候,界面有恢复正常,高手帮我解决下啊,我想在子线程调用recvfrom函数监听端口的时候,主线程不至于卡机。谢谢哪位高手帮忙。