cygwin c sem_init

时间:2012-09-24 09:07:43

标签: c cygwin semaphore

if((sem_init(sem, 1, 1)) == 1) perror("error initiating sem");

如果我包含这行代码,我的程序就会启动并退出。我刚开始学习如何使用信号量。我正在使用cygwin,当这行被注释掉printf的ABOVE这个打印到控制台但是当包含这个时,没有任何反应。

我做了以下内容让cygserver进入 -

CYGWIN=server
ran /bin/cygserver-config
ran /usr/sbin/cygserver

对于配置,它说cygserver已经在运行 对于sygserver,它说 -

initailaizing complete
failed to created named pipe: is the daemon already running?
fatal error on IPC transport: closing down

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我弄清楚出了什么问题。在我为数据分配任何内存之前,我使用的是data(struct)= shmat()。由于某种原因,我的'printf'停止了工作。