语言基础
系统工具
并行编程
● [ Python编程P242 ] 服务器代码中while循环一直等待客户端连接,如果没有客户端连接是否会一直处于等待状态?
from socket import socket , AF_INET,SOCK_STREAM port = 50008 host='localhost' def server(): sock = socket(AF_INET,SOCK_STREAM) sock.bind(('',port)) sock.listen(5) #等待客户端连接 while True: conn,addr=sock.accept() #如果没有客户端连接会怎么样?是否一直循环? data = conn.recv(1024) reply = 'server got :[%s]' % data conn.send(reply.encode()) 书中有写默认情况下会保持阻塞,但是说的不清楚。实际测试中,sock.accept()后面的代码会阻塞,直到有客户端的连接。
● 套接字和TCP/IP 、UDP的关系?
● 文件描述符是什么?
・linux中一切都是文件,比如硬件设备、磁盘、进程、线程等等
・对于这些文件有相应的索引,我们吧这个索引叫做文件描述符,简称fd(file descriptor)
・fd 是一个非负整数,每次打开或创建一个文件,内核就会向进程返回一个fd,从0往后一次递增
・Linux下叫做文件描述符,Windows下叫做句柄
参考https://www.jianshu.com/p/504a53c30c17
● 匿名管道是什么、命名管道是什么、两者区别?
● b'...' 是什么意思?
https://www.cnblogs.com/remly/p/11438789.html
● 信号是什么?
● 使用multiprocessing模块是否需要同步化序列?
● 同样是Socket,怎么区分是tcp还是udp?
socket.socket(socket.AF_INET, SOCKET.SOCK_STREAM) -> tcp
socket.socket(socket.AF_INET, SOCKET.SOCK_DGRAM) -> udp
网络编程
● 什么是CGI? 什么是CGI脚本?
CGI是一种协议。通过cgi协议,web server可以将动态请求和相关参数发送给专门处理动态内容的应用程序。
参考:https://www.cnblogs.com/f-ck-need-u/p/7627035.html