bc不是stat,而是读两个文件,然后对比,并将有差异的部分写入到文件中。至于你说git不会开几十个线程(并因此推断很多操作都是非并行的),我只是想说你很外行,现在操作系统和系统开发平台(比如twisted等)已经可以很好地做到异步IO了,根本不需要多个操作系统线程就可以产生大量异步IO请求了。
【 在 zli07 的大作中提到: 】
: 几万个而已,真要算起来stat一个文件几毫秒的话,一个线程几十秒也能完成。你再想想服务器,一个进程每秒钟能接受上千请求,光写日志就写上万条,然后再乘以几十个进程。这才叫io密集型
: 至于 git,你觉得 git 会开几十个线程出来吗,很多操作都是非并行的。
: 至于编译,实际上是一个CPU密集型操作,一个进程访问文件的时候也是顺序的,实际的并行程度不会超过CPU核心数,而且大部分时间是耗在计算上而不是io上了
--
FROM 113.232.128.*