我有一个可以在服务器或客户端模式下运行的二进制文件。它可以这样使用:
$ ./a.out --server &
$ ./a.out --client &
他们互相交谈,这运作良好。我的问题是启动服务器时的预期行为是什么:
$ ./a.out --server &
但后来我忘了杀掉它,开始我的开发工作,编辑和构建,运行客户端:
$ edit client.c
$ make
$ ./a.out --client
^C
<repeat>
现在没有设置粘性位,我的操作系统(Ubuntu)是否运行两个不同版本的二进制文件?或者它是走捷径并使用内存中的实例,因此忽略了我的最新版本?这个错误还有其他副作用吗?