在两点代码之间,我是否可以判断该进程是否已被内核抢占,或者更确切地说,当时是否有任何其他代码在同一处理器上运行?
//Point A
some_type capture = some_capture();
.
.
.
//Point B
if( interrupted( capture ) )
是否有任何我可以读取的系统调用,或者最好是我可以读取的用户空间变量,它可以实现some_capture
and interrupted
?
我正在尝试改进我的一些基准测试代码,并希望排除此类示例。通常我可以使用 FIFO 线程,但在某些情况下我不能。一般来说,我正在计时的事情比时间片要少,而且往往不会阻塞,因此对它们何时进行的任何测量都不是对隔离功能时间的准确测量。