[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 11/12 04:14 / Filesize : 12 KB / Number-of Response : 51
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者歓迎】C/C++室 Ver.88【環境依存OK】



1 名前:デフォルトの名無しさん [2013/11/10(日) 14:31:34.81 ]
エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
※sage禁止です(と代々スレに書いてありますが自己判断で)。

【前スレ】
【初心者歓迎】C/C++室 Ver.87【環境依存OK】
toro.2ch.net/test/read.cgi/tech/1382185936/
◆ソースのインデントについて
半角空白やTABでのインデントはスレに貼ると無くなります。
そのため、アップローダーに上げるのも手ですが直接貼る場合は、
全角空白か に置換すると見栄えだけはよくなります。

【アップローダー】(質問が長い時はココ使うと便利)
codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック)
ideone.com/ (時間帯によってはcodepadが重い事があるのでここも利用)

【重要】
hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。

39 名前:デフォルトの名無しさん mailto:sage [2013/11/11(月) 22:30:28.94 ]
>>36
for (;;) {
mutex.lock();
std::cout << "func." << std::endl;
}
なんだこのKUSOコードは死ね

40 名前:デフォルトの名無しさん mailto:sage [2013/11/11(月) 22:51:33.85 ]
>>37
WSAStartupしておいて、あとは普通のBSD形式のソケットAPIで終わり。
socket、bind、listen、accept、recv、send、closesocket。
あとselectとかshutdownとかsetsockoptとか。

WSAなんちゃらって高機能なAPIもあるけど、最低限BSD形式ので十分。

41 名前:デフォルトの名無しさん mailto:sage [2013/11/11(月) 22:55:18.53 ]
>40
ありがとうございます
それらを取っ掛かりに調べてみます

42 名前:デフォルトの名無しさん [2013/11/11(月) 23:47:22.87 ]
>>39
ワラタw

>>36
もうちょっとマルチスレッドとミューテクスについて勉強したほうがいいと思う

43 名前:デフォルトの名無しさん mailto:sage [2013/11/12(火) 00:25:10.23 ]
>>36
hoge本で勉強したって感じだな

44 名前:デフォルトの名無しさん mailto:sage [2013/11/12(火) 00:40:43.10 ]
>>40
チャットみたいに文字列を送受信したい場合もそれでいける?
他に適した方法あるならキーワードだけでも教えて欲しい

45 名前:デフォルトの名無しさん mailto:sage [2013/11/12(火) 00:50:58.94 ]
async()使った方が楽じゃん

46 名前:デフォルトの名無しさん mailto:sage [2013/11/12(火) 01:14:53.46 ]
>>44
いける。けどクライアントはconnectやIPアドレスの解決でgethostbynameとかも使う。
selectに含まれる話だけど、ブロッキングモードと非ブロッキングモード、スレッドセーフについて調べとくと良い。
マルチスレッドを積極的に使えば非ブロッキングモードもselectは不要だがスレッドセーフを意識する必要が増える。
selectを積極的に使えば非ブロッキングモードもマルチスレッドは不要…なのが理想だがWindowsの場合は難しい。
ウィンドウメッセージと、各種同期オブジェクトと、ソケット同期関連が混在してしまっている。

ソケットを直接触らない方法は色々あるけどお勧めとかは知らんので他の人頼んだ。

47 名前:デフォルトの名無しさん mailto:sage [2013/11/12(火) 02:12:15.70 ]
つ boost.asio



48 名前:デフォルトの名無しさん [2013/11/12(火) 02:38:13.68 ]
asioはWindowsではうまく動くんだけど、Linuxではうまく動かないから
ダメだわ。
色々考えてみたんだけど、Linuxで非同期はかなり無理あるわ。
自分でasioっぽいものをつくろうとか思ってもasioの二の舞なるわ。
あと、一つのプロセスがあいてるコアをできるだけ使いたいとか無理っぽかった。
これは厳しいわ。
公平なスケジューリングと言えば聞こえがいいんだけど、これメニーコアとかなったら
どうするんだろね。
こういう部分はWindowsのほうが得意っぽかった。
だから何って話だけど。

49 名前:デフォルトの名無しさん [2013/11/12(火) 02:40:29.89 ]
ああ、ちょっと誤解を招くな。
非同期が無理じゃなくて、非同期を抽象化するのが無理ぽかった。

50 名前:デフォルトの名無しさん [2013/11/12(火) 02:45:14.66 ]
Windows限定だったらasioは超お勧めだよ。
IOCP使ってくれるんで良い感じ。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<12KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef