makefile
1)如果不把生成的最后执行的文件放在第一行,输入make它就默认只执行第一行的code。
2)如果是在centOS7下面拷贝的话,会自动转换TAB
为空格,然后编译命令失去作用。
线程池
只适用于无状态的服务器,因为不能保证是同一个工作线程处理多个客户请求。同一个连接上的客户请求,可能由不同的线程来处理。
pthread_create()函数
pthread_create
函数第三个参数必须指向一个静态函数(static),否则编译没办法通过。如果想在static函数中使用类的动态成员(如成员函数和成员变量),通过以下方法来实现:
1)通过类的静态对象来调用;
2)将类的对象作为参数传递给静态函数,然后在静态函数中引用这个对象,并调用其动态方法。
1 | class threadpool{ |
bind失败
在华为云服务器上bind失败,原因可能如下:
1)端口未开放
查看端口开放命令lsof -i:80
netstat -aptn |grep -i 80
查看所有端口命令netstat -lptn |grep -i 80
查看TCP命令netstat -lpun |grep -i 80
查看UDP命令
2)端口已被占用
CentOS7查看核心数
grep 'core id' /proc/cpuinfo | sort -u | wc -l
华为云服务器是单核的