[過去ログ]
ふらっと C#,C♯,C#(初心者用) Part158 (1002レス)
ふらっと C#,C♯,C#(初心者用) Part158 http://mevius.5ch.net/test/read.cgi/tech/1679783460/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
542: デフォルトの名無しさん (ワッチョイ bfbd-Np+b) [sage] 2023/05/15(月) 23:44:43.69 ID:7dwhbD/A0 >>530 Win32APIで最近非同期のコードを書いているけど、 ReadFile()/WriteFile()が途中までで返ってくることも踏まえてループ処理にするとして、 1) ReadFile()/WriteFile()で同期(OVERLAPPED構造体なし) →同期 2) ReadFile()/WriteFile()で非同期(OVERLAPPED構造体あり)、WaitFor~、GetOverlappedResult() →スレッドを明示的に手放す? 3) 1)をCreateThreadpoolWork() →スレッドプールのスレッド内で同期処理 4) 2)をCreateThreadpoolWork() →スレッドプールのスレッドで動作するが、途中でスレッドを明示的に手放す? IOCPならその間に他のスレッドが動きそうだが、スレッドプールAPIでもそうなるか知らない。 5) CreateThreadpoolIo()、ReadFile()/WriteFile()で非同期(OVERLAPPED構造体あり)、 IoCompletionCallbackで続きのReadFile()/WriteFile()を行う →これが一番効率的だと思う。 最近5)で書いてる。めんどくさい。うまく動かなかった時に調査のために同期処理にしてみることができない。 C#のasync/awaitは神。 .NET Framework/.NETのライブラリがどこまでやっているのかまだソースをほとんど調べていない。 http://mevius.5ch.net/test/read.cgi/tech/1679783460/542
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.037s