所有I /
O必须通过syscall来完成,并且在Go中实现syscall的方式总是通过运行时控制的代码来调用。这意味着,当您调用syscall时,而不是直接调用它(从而放弃了对内核线程的控制),而是将您要进行的syscall通知运行时,并以goroutine的名义进行了调用。例如,这允许它执行非阻塞的系统调用,而不是阻塞的系统调用(本质上是告诉内核,“请执行此操作,而不是阻塞直到完成,立即返回,并在结果返回时让我知道准备好了”)。这使它可以在此期间继续进行其他工作。

所有I /
O必须通过syscall来完成,并且在Go中实现syscall的方式总是通过运行时控制的代码来调用。这意味着,当您调用syscall时,而不是直接调用它(从而放弃了对内核线程的控制),而是将您要进行的syscall通知运行时,并以goroutine的名义进行了调用。例如,这允许它执行非阻塞的系统调用,而不是阻塞的系统调用(本质上是告诉内核,“请执行此操作,而不是阻塞直到完成,立即返回,并在结果返回时让我知道准备好了”)。这使它可以在此期间继续进行其他工作。