|
|
1
5
你确实看到了一个种族状况。你可以通过放置
产生竞争条件的原因是进程A没有正确地将信号传递给进程B。这意味着,如果进程B在进程A开始跟踪进程B之后开始跟踪进程C,则进程B永远不会获得
要解决这个问题,你只需要
|
|
|
2
0
在调用ptrace本身的子进程上执行一些ptrace功能是“可能的”。真正的困难是,跟踪进程在附加到跟踪对象时成为跟踪对象的父进程。如果跟踪进程希望跟踪所有(直接和间接)子进程的所有行为(例如,当调试器程序需要调试多线程程序时),它自然会破坏原始进程层次结构和所有进程间/线程间通信(即线程同步所有子进程之间的同步、信号发送/接收……)需要由跟踪进程模拟/多路复用。这仍然是“可能的”,但要困难得多,效率也低得多。 |
|
|
MaPo · Linux,设置锁定ICMP_过滤器选项 1 年前 |
|
Doohyeon Won · 内联函数上的奇怪现象?[关闭] 1 年前 |
|
|
Bobby · 复合字面值总是左值吗? 1 年前 |
|
9-Pin · C: 嵌套结构的堆栈内存分配 1 年前 |