继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第8天 C气象数据中心 13-10 数据库连接池的优化

一点积分
关注TA
已关注
手记 29
粉丝 6
获赞 2

【九月打卡】第8天 C气象数据中心 13-10 数据库连接池的优化

  • 课程信息

课程名称:C/C++气象数据中心实战,手把手教你做工业级项目

课程章节:13-8 数据库连接池的实现

主讲老师: 吴从周

  • 课程内容

使用数据库连接池的方法进行优化

  • 课程收获
    1.判断连接是否超时,使用当前时间减去 数据库连接的时间
    2.创建一个检测线程池的线程函数
    3.每一个线程,默认在共享区中占有的空间为8M,可以使用ulimit -s修改。进程是资源分配的基本单位,而线程是调度的基本单位。
    4.多线程的构建中,如果线程运行太快,主程序可能还来不及把线程的ID放入容器中,可能会出现找不到线程ID的情况,所以需要加入延迟。并且,多个线程之中, 只要有一个线程存在bug(如访问了非法地址引发的段错误) , 就会导致进程内的所有线程一起完蛋。在本程序中由于简单的创建和应用,虽然不会存在这类情况,但是在后续的学习和项目中需要加以注意。
    5.并不是只有主线程才能创建线程, 被创建出来的线程同样可以创建线程。不存在类似于fork函数那样的父子关系, 大家都归属于同一个线程组, 进程ID都相等, group_leader都指向主线程, 而且各有各的线程ID。通过group_leader指针, 每个线程都能找到主线程。主线程存在一个链表头,后面创建的每一个线程都会链入到该双向链表中。
    6.并非只有主线程才能调用pthread_detach函数, 其实任意线程都可以对同一线程组内的线程执行分离操作。

图片描述
图片描述

图片描述

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP