【0135】【libpq】阻塞并完成一个postmaster连接(内含PGconn状态转换图

编程入门 行业动态 更新时间:2024-10-10 19:23:18

【0135】【libpq】阻塞并完成一个postmaster连接(内含PGconn<a href=https://www.elefans.com/category/jswz/34/1771386.html style=状态转换图"/>

【0135】【libpq】阻塞并完成一个postmaster连接(内含PGconn状态转换图

文章目录

  • 1. 回顾
  • 2. status的状态变化是理解其实现的关键
    • 2.1 PGRES_POLLING_XXX与CONNECTION_XXX之间枚举值的微妙关系
    • 2.2 pqReadData()读取更多数据,如果有的话

1. 回顾

在【0134】【libpq】启动建立一个与postmaster通信的连接(4) 一文中,结合源码的阅读,详细地讲解了libpq在完成所有的准备工作后,是如何去建立一个与postmaster守护进程通信连接的过程。具体建立连接细节是由函数PQconnectPoll()实现。该函数代码量较大,1.5K多行代码,加上代码中运用了goto语法,阅读起来是比较费力的。我这边也是通过gdb调试结合阅读源码的方式,才把这整个链路给理清。因此,我认为很有必要用单独的一篇文章来详细讲解PQconnectPoll()函数的实现思路。

相关阅读:

更多推荐

【0135】【libpq】阻塞并完成一个postmaster连接(内含PGconn状态转换图

本文发布于:2024-02-13 08:51:27,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1757795.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:状态   libpq   PGconn   postmaster

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!