我对bgwriter.c 与 guc 关系的初步理解

简介:

我用例子来说明:只是一个模拟,我自己做的 假的 bgwriter.c

复制代码
[root@localhost test]# cat bgwriter.c
#include<stdio.h>
#include<stdlib.h>
#include<signal.h>
#include "bgwriter.h"
#include "guc.h"
//some conditions make it change, eg:signal
int BgWriterDelay=100;
void sighandler(int sig);
int main()
{
 
  signal(SIGHUP,sighandler);
  for (;;)
  {
    sleep(1);
  }
}
void sighandler(int sig)
{
  changeDelay();
  fprintf(stderr,"BgWriterDelay is now %d.\n",BgWriterDelay);
  //here I just want to demo, so close it
  exit(0);
}
[root@localhost test]#
/////////////////////////////////////////////////////////////////
下面的 "bgwriter.h" and "guc.h" and "guc.c",也都是假的。只是为了模拟。
///////////////////////////////////////////////////////////////// [root@localhost test]# cat bgwriter.h extern int BgWriterDelay; [root@localhost test]# [root@localhost test]# cat guc.h extern void changeDelay(); [root@localhost test]#cat guc.c #include "bgwriter.h" void changeDelay() { //to simulate reading configuration file etc. BgWriterDelay=500; } [root@localhost test]# ///////////////////////////////////////////////////////////////// 给 SIGHUP 信号 [root@localhost test]# gcc bgwriter.c guc.c -o bgwriter.o [root@localhost test]# ./bgwriter.o [root@localhost ~]# ps -ef|grep bgwriter.o root 5475 5297 0 15:08 pts/6 00:00:00 ./bgwriter.o root 5500 5479 0 15:08 pts/7 00:00:00 grep bgwriter.o [root@localhost ~]# kill -s SIGHUP 5475 [root@localhost ~]# BgWriterDelay is now 500. [root@localhost test]#
复制代码

结束:





本文转自健哥的数据花园博客园博客,原文链接:http://www.cnblogs.com/gaojian/archive/2012/10/31/2747388.html,如需转载请自行联系原作者

目录
相关文章
|
机器学习/深度学习 数据可视化 语音技术
【文献学习】Deep Learning for Audio Signal Processing
关于深度学习在音频信号处理领域应用的综述,涵盖了不同类型的深度学习模型及其在音频识别和合成任务中的应用。
336 3
|
算法 网络协议 安全
最全的二叉树算法总结,30道题搞定大厂算法面试(一)
最全的二叉树算法总结,30道题搞定大厂算法面试
|
索引 Python
Python 列表查找元素位置的高级函数代码程序设计
Python中,要查找list列表中元素的位置,即元素在列表中的索引位置,可以使用list列表类型内置的方法index(),但这个并不能直接使用,因为要考虑到查找的元素可能并不存在于list列表之中,而使用index()方法查找列表中并不存在的元素,Python将抛出ValueError,程序也可能因此终止,为了避免这种情况
165 3
|
机器学习/深度学习 并行计算 程序员
DragGAN 完全自由 P 图指南
在上篇中,树先生教大家如何正确部署 DragGAN 项目,实现自由拖拽式 P 图。 但可惜只能使用项目预置的一些图片,本篇教大家如何利用该项目自由编辑修改任何图片。
|
运维 监控 BI
厂二代、乡村教师和救援队长是怎么用钉钉的
厂二代、乡村教师和救援队长是怎么用钉钉的
255 0
|
人工智能 编译器 程序员
第八周:数组
数组的魅力才刚刚开始,在其他地方你都能看到他
201 0
|
存储 传感器 人工智能
中报透露神州数码集团云战略聚焦MSP扩张两翼
中报透露神州数码集团云战略聚焦MSP扩张两翼
242 0
中报透露神州数码集团云战略聚焦MSP扩张两翼
|
供应链 iOS开发 SoC
重磅!小米MIX 2怒怼iPhone 8!
最近科技手机圈内除了三星Note 8和iPhone 8为科技“春晚”做足准备外,连擅长怼魅族的小米也紧随其后。9月,谁会占据主导地位?
189 0
重磅!小米MIX 2怒怼iPhone 8!
|
7天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!