c - 多终端多用户应用

标签 c multithreading pthreads

熬夜的人

我认为这是一个简单的问题,但不知道如何解决它:

我想创建一个多线程多用户应用程序,该应用程序将通过多个终端在同一台计算机上启动,例如游戏。

应用程序应该通过终端执行

./foo

例如,在 3 之后,终端调用了此命令,然后游戏应该开始:

1 号航站楼:

./foo
Waiting for other users...

2 号航站楼:

./foo
Waiting for other users...

3 号航站楼:

./foo
Starting...

我只是没有看到一种机制可以做到这一点,每次我从终端调用 ./foo 时,它都会创建另一个进程。我怎样才能让它“计算”它被调用的次数而不是创建另一个进程?如果有另一种方法(很可能有),是哪一种?

最佳答案

不存在,每次你再次启动它时,你都会创建一个新进程,但是你可以让程序创建一个unix套接字,然后所有接下来的进程将连接到同一个套接字并在其中相互通信您定义的某种方式。

关于c - 多终端多用户应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16616137/

相关文章:

c - 需要使用指针显示时间

c - 如何在c中为未知字符串长度分配内存

multithreading - 64 位 OSX 上的线程特定数据预定义结构是如何或在哪里设置的?

java - H2O生产者java线程锁、可重入锁

xcode - lldb暂停线程,而其他线程继续

在 c 中使用线程的 Curl 客户端会产生随机行为吗?

c - 读取逗号分隔的输入 `scanf()`

c - 如何确保 pthread_cond_wait() 不会错过任何 pthread_cond_signal()?

javascript - PHP 将文件文本附加到所有 JavaScript 文件

c - scanf函数如何在C中工作?