-1

この 2 つの行の違いが分かる人はいますか?

1) ret = write( fd_out, local_bugger, bytes_to_move);

2) nwritten = write (fd, buf + total_written, size - total_written);

明らかに、命名規則ではありません。

具体的には、一方が他方よりも 4 倍高速にネットワーク経由で書き込みを行っています。

ロジック、フラグなどを探しています

ありがとう

4

2 に答える 2

6

それらすべての値/タイプは何ですか? 現在、この質問には答えられません... オプション 2) は 4 倍のデータを書き込むことになりますか? 2 つのハンドルの fopens のフラグ オプションは何ですか? 等...

現時点では、火星が木星でアセンダントにあり、月がギブスワックスを起こしているためであり、ヒッグスボソンがイーサネットケーブルのクォークを台無しにしているためだと思います.

于 2011-09-21T20:56:00.273 に答える
0

ここでは、次の 2 つのことが考えられます。

  1. 書き込んでいるチャンクのサイズ。小さなチャンクでは、より多くのオーバーヘッドが発生します。しかし、書き込みが 16 バイト程度以下でない限り、大きな違いが生じる可能性は低いです。
  2. 書き込み先のファイル記述子の詳細。どのくらいのバッファリングがありますか? ファイルシステム (NFS または CIFS) を経由していますか? 同じネットワークを介して送信されますか?

要するに、マーク B が答えたように、十分な情報がありません。

于 2011-09-21T21:02:21.020 に答える