文章目录
1.文件传输
-
文件传输(MuduoManual.pdf P57)
-
eg:服务端程序
42\jmuduo\examples\filetransfer\download.cc
42\jmuduo\examples\filetransfer\download2.cc
examples/filetransfer/download3.cc -
eg测试:客户端程序
43\jmuduo\tests\Filetransfer_test.cc
43\jmuduo\tests\CMakeLists.txt -
测试:服务端
客户端
启动了8个TcpClient下载了8个文件
-
测试:启动服务端
启动客户端
客户端修改的代码如下:
g_loop->quit();//会使得主线程的loop.loop();跳出来,使得程序结束
// usleep(20000);注释掉
可能会造成以下结果
quit,之后主线程退出了,但是2个IO线程可能还没有结束,所以这边的线程安全性还有待提高,usleep(20000);之后,这个问题就不会触发了
EventLoop 0x8B62730的创建是在11051线程,但是threadId_=73。
当前只有11050,11052,11051这三个线程,ThreadId_=73说明EventLoop可能被销毁了一部分了出现的问题。