数据结构:
入口函数:postgresMain
walsender启动后,此进程先会调用postgresMain
1,信号处理机制
信号是一种软件中断机制,是linux很重要的一种进程间通信方式,很多重要的应用程序都需要处理信号。PostgreSQL在启动Postmaster主进程时注册信号处理函数。在linux中使用signal()和sigaction()函数安装信号。PostgreSQL定义了pgsignal函数实现信号的安装。pqsignal(int signo, pqsigfunc func) //信号值 信号处理程序
prevfunc=pg_signal_array[signum]
pg_signal_array[signum] =handler
实际上就是将信号处理程序传入数组,由信号收集器来去调用typedefvoid (*pqsigfunc) (intsigno);
函数指针,可以让任意处理器函数来调用
返回值为函数如何执行?