摘要: 理解 epoll 过程 阅读全文
posted @ 2018-11-19 23:05 osbreak 阅读(295) 评论(0) 推荐(0) 编辑
摘要: epoll 是 Linux 内核为处理大批量文件描述符而作了改进的 poll,是 Linux 下多路复用 IO接口 select/poll 的增强版本 在 linux 的网络编程中,很长时间都在使用 select 来做事件触发。在 2.6 内核中,有一种替换它的机制,就是 epoll。 select 与 epoll 区别概述 1、函数使用上:epoll 使用一组函数来完成任务,而不... 阅读全文
posted @ 2018-11-18 21:10 osbreak 阅读(613) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<sys/socket.h> #include<netinet/in.h> #include<arpa/inet.h> #includ 阅读全文
posted @ 2018-11-18 21:09 osbreak 阅读(165) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<sys/socket.h> #include<netinet/in.h> #include<arpa/inet.h> #includ 阅读全文
posted @ 2018-11-18 21:09 osbreak 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 阻塞 阻塞调用是指调用结果返回之前,当前线程会被挂起(线程进入非可执行状态,在这个状态下,cpu不会给线程分配时间片,即线程暂停运行)。 函数只有在得到结果之后才会返回。 非阻塞 非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回。 /**参 数 :int nf 阅读全文
posted @ 2018-11-14 23:24 osbreak 阅读(1329) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-11-08 14:40 osbreak 阅读(855) 评论(0) 推荐(0) 编辑
摘要: 定义业务类,继承 Thread类,实现run函数。调用start()即可 #pragma once #include <windows.h> class Thread { public: DWORD _threadId; HANDLE _thread; protected: /** * 线程入口函数 阅读全文
posted @ 2018-11-06 11:34 osbreak 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 线程 1.01 创建Worker线程THREAD_PARAM void CDemoDlg::OnBeginThread() { m_ThreadParam.hWnd = m_hWnd; //启动线程,初始为挂起状态 AfxBeginThread(ThreadProc, &m_ThreadParam) 阅读全文
posted @ 2018-10-23 23:05 osbreak 阅读(235) 评论(0) 推荐(0) 编辑
摘要: #include "stdafx.h" #include #include #include #include #include using namespace std; using namespace boost; /* 定义一个MutiStruct key : 1. objectID 2. strName value: 对象指针STNode... 阅读全文
posted @ 2018-10-21 16:35 osbreak 阅读(1423) 评论(0) 推荐(0) 编辑
摘要: 1、Cinatra是由C++开源社区purecpp发起的一个开源项目,是一个现代C++写的Web框架,旨在给用户提供一个易用、灵活和高性能的Web框架,让用户能完全专注于核心逻辑而无需关注http细节。 2、GitHub下载源码,https://github.com/qicosmos/cinatra 阅读全文
posted @ 2018-10-20 15:17 osbreak 阅读(3839) 评论(0) 推荐(0) 编辑