请教关于cygwin程序在windows下运行的问题

Nio96 2016-10-27 11:44:59
大家好,最近在修改spawn-fcgi的源码,主要是参考网上一个兄弟的代码, 做了一个daemon。
但是不知道怎么去验证,也有点疑惑,毕竟代码里用的都是linux 里面的fork,waitpid, sigaction,比如说SIG_USER之类的,windows 并没有这些信号,到底运行的时候会不会有这些信号产生呢?

我觉得应该是有的,要不然使用cygwin写出来的代码,就应该在windows下跑不起来才是,但是究竟是怎么一个转换方式或者支持方式呢?有了解的科普一下,谢谢!


struct sigaction sa;
sigset_t sset;
//const char* style;

rlimit_reset();

memset(&sa,0,sizeof(sa));
signal(SIGPIPE, SIG_IGN);

sa.sa_handler = sigterm_handler;

sigaction(SIGINT, &sa, NULL);
sigaction(SIGTERM, &sa, NULL);
sigaction(SIGQUIT, &sa, NULL);
sigaction(SIGHUP, &sa, NULL);

sa.sa_flags = SA_RESTART | SA_SIGINFO;
sa.sa_sigaction = sigchld_handler;
sigaction(SIGCHLD, &sa, NULL);

sigemptyset(&sset);
sigaddset(&sset, SIGCHLD);
sigprocmask(SIG_UNBLOCK, &sset, &sset);

...全文
350 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dobzhansky 2016-10-27
  • 打赏
  • 举报
回复
改用一些抽象
libsigc++, sigslot, nano-signal-slot, neosigslot, Signals, boost.signals

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧