私の質問は主にコードの最適化に関するものです (現時点では) PC 上のさまざまな接続を監視するネットワーク モニターを作成しました。パケットをキャプチャすると、接続ごとに UI にオブジェクトを作成することになっています。現在行っていることは、全体的な消費帯域幅と、プログラムが実行される毎秒に送信される合計データを調べることです。コードのその部分は次のとおりです。
temp= packet_rtxt.TextLength;
tempdr = temp / 1024;
dr_txt.Text=tempdr.ToString();
totaldata = totaldata + temp;
totaldatadisp = totaldata;
packet_rtxt.Text = "";
//unit
if (totaldata < 10485760)
{
if (totaldata < 10240)
unit.Text = "bytes";
else
{
totaldatadisp = totaldatadisp / 1024;
unit.Text = "KBs";
}
}
else
{
totaldata = totaldatadisp / 1048576;
unit.Text = "MBs";
}
test.Text = totaldatadisp.ToString();
tds.Enabled = true;
}
これまでのところ、キャプチャしたパケットをリッチテキストボックスに書き出し、そのrtxtの長さを取得して合計データのカウンターに追加し、長さを取得してデータレートとして使用し、rtxtをクリアしていますデータの次のビットのために。受信したデータの合計部分は正常に動作していますが、BPs セクションは少量のデータに対して正常に動作し、(私の PC で) データ レートが 10kbps を超えている場合、コード全体を最適化しようとする必要があります。メソッド(すべての接続を監視する必要があることに注意してください)、または別のUIコントロールを使用する必要がありますか? 最適化または新しい方法の使用に集中する必要がありますか?
前もって感謝します