三维视频孪生融合技术,探索虚拟与现实的奇妙结合
833
2022-10-14
PG守护进程(Postmaster)——ApplyLauncherRegister
后台二等公民进程logical replication launcher注册(Register the apply launcher. Since it registers a background worker, it needs to be called before InitializeMaxBackends(), and it’s probably a good idea to call it before any modules had chance to take the background worker slots.)。 如果max_logical_replication_workers为零,就不需要注册logical replication launcher后台进程。 logical replication launcher也是使用后台二等公民进程框架。
void ApplyLauncherRegister(void){ BackgroundWorker bgw; if (max_logical_replication_workers == 0) return; memset(&bgw, 0, sizeof(bgw)); bgw.bgw_flags = BGWORKER_SHMEM_ACCESS | BGWORKER_BACKEND_DATABASE_CONNECTION; bgw.bgw_start_time = BgWorkerStart_RecoveryFinished; snprintf(bgw.bgw_library_name, BGW_MAXLEN, "postgres"); snprintf(bgw.bgw_function_name, BGW_MAXLEN, "ApplyLauncherMain"); snprintf(bgw.bgw_name, BGW_MAXLEN, "logical replication launcher"); snprintf(bgw.bgw_type, BGW_MAXLEN, "logical replication launcher"); bgw.bgw_restart_time = 5; bgw.bgw_notify_pid = 0; bgw.bgw_main_arg = (Datum) 0; RegisterBackgroundWorker(&bgw);}
logical replication launcher运行的函数ApplyLauncherMain
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。