Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。
本文主要记录一些基本用法,供参考和记忆。
mysql 重连处理
mysql 的连接有的时候会发生被动断开的情况:
- mysql 客户端与 mysql 服务器之间的网络出现问题
- mysql 服务器重启
- mysql 连接长时间没有操作,被 mysql 服务器断开。
在服务端程序中,我们希望 mysql 的连接能尽量保持不断开,如果断开就需要重连。
mysql 字符集处理
在 mysql 中,字符集问题其实并不显眼,很多时候都不需要纠结,但是回忆了下这些年,字符集还是会时不时出来捣乱,所以干脆总结下,免得总是过一段时间又去翻官方文档。
c++11 条件变量
比较常见的一个使用 std::condition_variable 场合就是线程池的消息队列。逻辑线程(可能多个)将消息推入消息队列,线程池中的工作线程(多个)会从消息队列中取出消息进行处理,如果队列中没有消息则进入睡眠状态等待消息。
本文将通过这种消息队列的实现,来分析如何使用 std::condition_variable 以及使用过程中的注意事项。
c++ 回调机制
我们会经常碰到需要使用回调函数的场合,比如:异步socket、定时器、windows消息处理等等。
这里将列出几种回调函数的实现机制,分析各自的优劣以供选择。