C言語によるWindowsプログラミングの解説サイトです。 書籍Windows Internalsの解説はこちらをご確認ください。
コンピューター:C言語講座:マルチスレッドについて マルチスレッドの特徴 一般的なサーバプログラムでは、多数のクライアントからの処理をできるだけリアルタイムに処理するために、何らかの形で並列処理を行うことが多いものです。たとえば、データベースサーバで、ある検索処理に時間がかかっている間ほかのクライアントが接続すらできない、という状態ではサーバとして失格でしょう。 並列処理を実現する方法としては、 ・プログラム自体を並列処理可能に記述する ・プロセスをもともと多数起動しておく ・fork()を使って子プロセスを起動するマルチプロセス処理 ・マルチスレッドを使用する などが考えられます。プログラム自体をリアルタイム性を考慮しながら記述するのはなかなか大変で、しかもソースが複雑になりメンテナンス性も問題が多くなりがちです。プロセスをもともと多数起動するのは簡単ですが、クライアントがどのプロセスに
二十五日半狂乱、6日目(の分...orz)の記事 Cのエラーハンドリングを毎回やるのは面倒だ! 前回も言ったが、Cではエラーハンドリングに戻り値とerrnoを用いる. それはそうと例外設計において"無視"は大罪である. だから、関数を呼び出したら戻り値は漏らさずチェックすべきだ. ということで、例えば以下のように逐一戻り値をチェックする. if(send(sockfd, buf, len, 0) < 0){ ERROR("send"); exit(1); } あぁ、面倒だ. 一体コードのどの部分が正常系の処理なのか? ほとんどエラーハンドリング*1で埋め尽くされるじゃないか. そもそもエラーハンドリング部分に書くのは毎回同じコードだし、コードの繰り返しは防ぎたい. エラー処理部分をラッピングして楽をする unpv12eの中でラッパーを被せることによってこの面倒を回避する方法を知った. in
C Socket Programming for Linux with a Server and Client Example Code Typically two processes communicate with each other on a single system through one of the following inter process communication techniques. Pipes Message queues Shared memory There are several other methods. But the above are some of the very classic ways of interprocess communication. But have you ever given a thought over how t
C言語でSocketを使って通信する物を作るのだが、 1対多の通信 非同期通信 プロセスとスレッドを使わない。 という条件になると、必然的にselectを使った通信になる。 レスポンスはこの際置いておいて、条件を満たせれば良いとする。 メモ書き程度なモノだし、間違っているかもしれない。 参考 http://www.golgo.jp/winsock.html winsockプログラミング:Geekなぺーじ 非同期通信 まず非同期通信の前に対義語の同期通信を知る必要がある。 同期通信とは、例えばキーボード入力する必要があるときは入力を終えるまで待つ。 非同期通信は、まんま逆で、入力を待たない。 どういうときに非同期通信をするのかといえば、例えば会話。 会話をするときは、1文話して1文聞く。 しかし、聞く為には、発言をするまで待たないといけない、とした場合、 自分が発言して相手の発言を待つ、と相
Rob Pike February 21, 1989 Introduction Kernighan and Plauger's The Elements of Programming Style was an important and rightly influential book. But sometimes I feel its concise rules were taken as a cookbook approach to good style instead of the succinct expression of a philosophy they were meant to be. If the book claims that variable names should be chosen meaningfully, doesn't it then follow
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く