boost
文章平均质量分 74
kgduu
这个作者很懒,什么都没留下…
展开
-
boost.graph之graph_traits
通过类模板来定义typedeftypenamedetail::BOOST_JOIN;发现其是通过获取模板参数G下的类型。有几个固定的类型定义以及静态成员函数其它的几个类型定义是通过宏来定义typedeftypenamedetail::BOOST_JOIN;替换后为//(name)是可替换部分是通过宏定义,主要定义了以下一些内容定义如下。原创 2024-10-24 22:44:59 · 230 阅读 · 0 评论 -
boost之put_get_helper
put_get_helper是property_map的辅助类,自定义的property_map必须实现put_get_helper,也是property_map的基类,子类必须实现operator[]原创 2024-10-16 09:06:29 · 694 阅读 · 0 评论 -
boost graph之visitors
vistors作为boost graph访问图属性的操作器,也是在bfs和dfs的基础,提供用户了自定义处理图中点或者边的行为。原创 2024-10-13 17:15:10 · 809 阅读 · 0 评论 -
boost之第三方线程池
其是模板类,支持future,下载地址为。原创 2024-10-08 18:03:47 · 663 阅读 · 0 评论 -
asio中的handler
申请和释放!defineddefined对于其它重载的最后是调用命名空闲的allocate和deallocate,最后就是调用命令空间和!defined!definednewdelete以linux平台为例fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;原创 2024-09-15 23:21:50 · 805 阅读 · 0 评论 -
asio中的异步connect分析
常规非阻塞connect是在socket处于连接时,才将socket添加到reactor的可读事件中,而由于asio在处理socket时,在打开时就将socket添加到reactor的读事件,这就决定了asio在处理非阻塞connect有差异。原创 2024-09-14 00:12:47 · 391 阅读 · 0 评论 -
asio中的异步accept分析
主要分析linux平台下的,即和。原创 2024-09-12 23:44:53 · 337 阅读 · 0 评论 -
boost.graph之graph_tag
graph_tag作为不同图内部定义的类型别名,用于edge_property_selector和vertex_property_selector的模板类型参数。原创 2024-09-05 23:52:23 · 405 阅读 · 0 评论 -
boost.graph之属性
最终形式为是property_kind的模板特例化,看是点属性还是边属性。原创 2024-09-05 23:25:05 · 270 阅读 · 0 评论 -
asio之带缓冲区的流
主要用于流式套接字。原创 2024-09-01 11:25:39 · 954 阅读 · 0 评论 -
asio之服务的理解
asio中的服务抽象为fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;- key key_为虚方法。原创 2024-08-31 22:42:19 · 740 阅读 · 0 评论 -
asio之互斥量,条件变量和本地存储封装
asio对于封装了多线程中的线程,互斥量,条件变量以及本地存储,线程在已有介绍,本方只介绍互斥量,条件变量和本地存储。原创 2024-08-27 07:03:38 · 793 阅读 · 0 评论 -
asio之task_io_service多线程
task_io_service运行在多线程情况时,call_stack来管理运行io_service的多个线程。原创 2024-08-26 22:56:15 · 776 阅读 · 0 评论 -
asio之thread
asio针对不同平台实现了线程,有null_thread,wince_thread,win_thread,posix_thread和std_thread。原创 2024-08-21 22:34:00 · 856 阅读 · 0 评论 -
boost之log的core
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;corefiltersinkrecord。原创 2024-08-17 09:19:36 · 165 阅读 · 0 评论 -
boost之智能指针
boost中的智能指针有。原创 2024-08-11 11:53:39 · 646 阅读 · 0 评论 -
boost graph宏BOOST_GRAPH_ENABLE_IF_MODELS_PARM
其中BOOST_GRAPH_ENABLE_IF_MODELS定义为。对于没有定义BOOST_NO_SFINAE的为。对于定义了BOOST_NO_SFINAE情况下。在overloading.hpp中定义。原创 2024-07-28 23:39:17 · 206 阅读 · 0 评论 -
asio之fd_set_adapter
fd_set_adapter是对fd_set的封装。原创 2024-07-14 16:16:21 · 620 阅读 · 0 评论 -
asio之select_interrupter
在有eventfd时,表示的是eventfd_select_interrupter,在window平台下使用的是socket_select_interrupter ,否则表示的是pipe_select_interrupter# endifdefined# endif# endif||# endifdefined# endif# endif||# endifdefined# endif#elifdefined# endif#else。原创 2024-06-17 23:26:44 · 919 阅读 · 0 评论 -
asio之buffer
asio中的buffer只是内存的搬动工,不负责分配和释放内存。原创 2024-06-14 23:28:08 · 578 阅读 · 0 评论 -
asio之winsock的初始化
asio中,winsock初始化工作是放在winsock_init类中来处理的。原创 2024-06-02 22:21:53 · 960 阅读 · 0 评论 -
asio之地址
address作为address_v4和address_v6的包装器fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;addressto_string:转换成点分十进制。原创 2024-04-22 23:07:01 · 652 阅读 · 0 评论 -
asio之套接字基础服务
在asio中,task_io_servcie对应linux下的事件循环,win_iocp_io_service对应window下的事件循环,在这个事件循环基础上,需要套接字的基础服务,其对socket作了一层封装。linux下对应的是reactive_socket_service_base,window下对应的是win_iocp_socket_service_base。原创 2024-04-13 13:03:31 · 498 阅读 · 0 评论 -
asio之套接字选项
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;原创 2024-04-06 14:16:15 · 1060 阅读 · 0 评论 -
asio中socket的打开
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;原创 2024-04-05 15:55:43 · 1026 阅读 · 0 评论 -
asio之运行框架基础
asio框架的运行基础是task_io_service以及window平台下的win_iocp_io_service,即asio的事件循环。原创 2024-03-24 18:16:52 · 345 阅读 · 0 评论 -
boost asio对于epoll的理解
【代码】boost asio对于epoll关闭套接字顺序。原创 2024-02-01 22:07:24 · 357 阅读 · 0 评论 -
boost graph计算最短路径程序异常退出问题解决
之前使用的boost 1.55版本,升级使用1.73版本后,在调用dijkstra_shortest_paths时会出现弹窗。而1.73版本中距离合并使用的是std::plus< D >()直接相加,会出现距离计算为负值情况。刚开始时,距离初始值为numeric_limits::max()。发现是在1.55版本中,距离合并使用的是closed_plus。如果其中的一个值是inf,则返回inf,否则作相加操作。点击调试,看调用栈信息,发现计算的距离值为负数。原创 2024-01-10 16:10:51 · 417 阅读 · 0 评论 -
boost graph之基础
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;原创 2023-12-12 22:21:55 · 1259 阅读 · 0 评论 -
boost graph之bgl_named_params
有两个定义,一个定义在类bgl_named_params中用于定义成员方法,另外一个作为全局方法bgl_named_params类中的成员方法\ } \\ } \\ } \template\ } \typename\ } \PType\ } \\ } \\ } \\ } \\ } \\ } \\ } \\ } \\ } \name\ } \\ } \\ } \const\ } \\ } \typedef\ } \原创 2023-10-13 23:15:30 · 339 阅读 · 0 评论 -
boost中的join
join算法在头文件,定义为。将所有的字符串合并成一个长串,字符串之间使用分隔符来拼接。相当于guava中的Joiner。Separator:字符串拼接符。Input:字符串窗口。原创 2023-08-23 16:24:03 · 252 阅读 · 0 评论 -
boost中的split
split需要头文件,用于切割string字符串,将切割之后的字符串放到一个std::vector 之中。boost::token_compress_on:将连续多个分隔符当一个,默认没有打开,当用的时候一般是要打开的。type:类型是std::vectorstd::string,用于存放切割之后的字符串。boost::is_any_of(“,”):设定切割符为,(逗号)select_list:传入的字符串,可以为空。原创 2023-08-23 16:21:37 · 757 阅读 · 0 评论 -
boost中date_time源码解析
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;原创 2023-08-10 09:26:20 · 367 阅读 · 0 评论 -
iocp基础
ExistingCompletionPort :现有 I/O 完成端口或 NULL 的句柄,如果此参数指定现有的 I/O 完成端口,则函数将其与 FileHandle 参数指定的句柄相关联,如果此参数为 NULL,则该函数将创建新的 I/O 完成端口。CreateIoCompletionPort创建输入/输出 (I/O) 完成端口并将其与指定的文件句柄相关联,或创建尚未与文件句柄关联的 I/O 完成端口,以便稍后关联。CompletionPort :I/O 完成数据包要发布到的 I/O 完成端口的句柄。原创 2023-07-23 21:27:53 · 304 阅读 · 0 评论 -
编译threadpool遇到的问题
2、需要libboost_thread-vc100-mt-gd-1_55.lib库。在项目中引入使用时,会报TIME_UTC没有定义。1、TIME_UTC宏修改为TIME_UTC_boost threadpool下载地址。使用的boost库是1.55。原创 2023-07-20 22:16:07 · 115 阅读 · 0 评论 -
asio源码解析
fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;important;io_service«abstract»servicereactor。原创 2023-07-19 23:14:39 · 536 阅读 · 0 评论 -
boost资料
1、官网2、github。原创 2023-07-03 22:27:57 · 332 阅读 · 0 评论 -
boost编译
1、从github上下载boostgit clone --recursive https://github.com/boostorg/boost.git boost或者git clone https://github.com/boostorg/boost.gitcd boostgit submodule initgit submodule update2、创建编译工具...原创 2020-04-05 00:03:04 · 622 阅读 · 0 评论 -
asio的学习笔记
1、asio中的service_registry是在io_service.ipp中注册的,注册也是只有可能时task_io_service和win_iocp_io_service两种。还有注意的是,task_io_service和win_iocp_io_service是直接继承boost::asio::detail::service_base的,所以是有id的。而reactive_socket_s原创 2016-09-08 22:37:48 · 1099 阅读 · 0 评论 -
asio中的socket相关service的关系图
原创 2016-01-05 19:13:33 · 636 阅读 · 0 评论