|
分類:[C#]
はじめまして、C#2010で開発しているものです。
同じアプリを4つ立ち上げるとCPU使用率が100%になってしまい、困っております。 (7つほどは上げなければならないのですが・・・)
今回1つのアプリで機器2個と接続し、通信を行うアプリを作成しました。(7つ立ち上げると14個の機器と接続します) 以下のようなアプリを作成していますが、CPU使用率が高くなる問題点はありますでしょうか…? (1つでCPU使用率が30%前後となります)
[フォーム] ・メイン画面→サブ画面→サブ画面 →メイン画面、サブ画面はtimerの500msイベントと入力イベントで動作しています。
[スレッド] ・TCPサーバーでは読み込みスレッドを1つ、TCPClientでは書き込みスレッドを1つを用意しています。 →サーバーおよびクライアントの接続先は1つずつ(合計2つの機器とつながります) →書き込みは1秒のスレッドのSleep、読み込みは接続断時に5秒のSleepを入れています。 ・ログスレッド(ログをキューにため込んでその内容を吐き出すための周期的なスレッド)
今回、お知恵をお借りしたく、こちらに書き込ませていただきました。 すみませんが、よろしくお願いいたします;;
以上です。
|