2

別の質問Go package syscall conn.Read() is non-blocking and cause high CPU usageの調査中に、パッケージ内のソースコードを読み取りましたsyscall

OS X 10.8.3 で最後の問題を見つけたので、関連するソース コードを次に示します。

http://golang.org/src/pkg/syscall/zsyscall_darwin_amd64.go?h=Read#L898

意味がわかりません。実際には&のようなものSyscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))がわかりません。彼らはどのように機能しますか?unsafe.PointerSyscall()

その上、誰でもコメントを説明でき// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDITますか、これらが異なる実装によって特定のプラットフォームでどのように、そしてなぜ機能するのですか? そして、syscallパッケージがこれらのインターフェースをどのように生成するのでしょうか?

誰かがRead()関連するような特定の機能を説明できればsyscall、それをよりよく理解するのに役立ちます、ありがとう.

4

2 に答える 2