タグ

ブックマーク / oshiete.goo.ne.jp (52)

  • Linuxでのスレッド間メッセージについて

    pthreadでは、排他や条件セマフォ等はありますが、メッセージ交換のAPIはありません。おそらく多くの人はプロセス間通信を用いているのではないでしょうか? ただし、posixのメッセージキューは、実装により1プロセスがオープンできる数が著しく(32個とか)制限されていますし、SystemVのメッセージもOSの初期設定値が著しく低い値が設定されていたりして、現代的なマルチスレッドの設計には向いていないかもしれません。また、UNIXは所有者プロセスがいなくなってもリソースが残ってしまいますので、正直使いづらいです。 プロセス内でのみのメッセージ交換なら、pthreadとSTLなどを組み合わせてキューをつくることも考えられます。軽量で高速なキューの実装が可能です。とりあえず実装することは難しくないのですが、デッドロック等に十分に注意して実装してください。共有メモリにおけば、プロセス間通信も可能

    Linuxでのスレッド間メッセージについて
    sankaseki
    sankaseki 2008/06/10
    Linuxでのスレッド間メッセージについて - 教えて!goo
  • Windowsでのfork方法

    Windowsプログラムで、UNIXライクなマルチプロセス処理を書きたいのですが、 fork()が使えないようで、代替の方法がわかりません。 CreateProcess()というAPIはありますが、これは単に実行モジュールの呼び出し を行う関数で、UNIXのようなfork()でプロセスを分けるものでは ないようです。 子プロセス内部で、構築済みのDLLを複数ロードしたいのですが、 そのDLLはマルチスレッド対応になっていないため、 マルチスレッド処理はできません。 具体的にやりたいと思っていることをプログラム的に書くと、 およそ以下のような処理です。(UNIXでよくやる手法です) ----- 実行処理のメイン() { int p_pid[128]; for(int i=0; i<10; i++) { switch(pid[i]=fork()){ case 0: // 子プロセスとしての処理

    Windowsでのfork方法
    sankaseki
    sankaseki 2008/05/14
    Windowsでのfork方法 - 教えて!goo
  • アクセス解析が怖い。

    個人的に毎日でも覗きたいブログがあるんですが、 アクセス解析で訪問回数や見たページが特定されると 思うと見るのを躊躇ってしまいます。 個人情報は分からないにしても、IPアドレスで 同一人物であるかどうかは分かりますよね? また詳しく分かる物だと何回目の訪問か・以前の 訪問からの時間・検索語句、リンク元まで分かってしまうようですし…。 私自身は怪しい人物ではないし、 ただ純粋にブログが見たいだけです。 でもあんまり頻繁に見ているのが分かると気持ち悪がられそう な気がして。 ブログやっている人はアクセス解析って良く チェックしているものですか? 頻繁に来ている、いろんなページを見ている訪問者に 対してはどう思いますか? 見てるのにコメントは残さない人だと感じ悪いですか?

    アクセス解析が怖い。
    sankaseki
    sankaseki 2008/05/14
    アクセス解析が怖い。 - 教えて!goo
  • ネット上の文字を消す

    当事者の方ですか?文章がなんか変ですよ? 当事者(会社なら代表取締役)なら、ご希望のことは弁護士さんにご相談ください。googleさんに書類をおくると割と簡単に消してくれるそうです。ただし、そういう対応をしていますという文言が検索されると出てきますので、返って痛い腹を探られることもあるようです。それが原因で騒ぎが大きくなることもあります。 google八分といいます。 それこそ、googleで調べてみてください。google八分すると、されるとどうなるのか、両方の側面から見れますよ。google八分されたページだけ集めたサイトなどもありますし、そこはgoogleにもヒットします。 当事者でないなら、大きなお世話はやめ、知らん顔してたほうがいいと思います。知り合いの方が気にし、追い詰めるだけの結果になることも。google八分は当事者しか申請はできません。2chにも削除を要請する場所がありま

    ネット上の文字を消す
    sankaseki
    sankaseki 2008/05/14
    ネット上の文字を消す - 教えて!goo
  • unsigned long long 型のフォーマット指定子

    ★アドバイス ・C99 の規格上では long long 型が『%lld』で unsigned long long 型が『%llu』です。 でもコンパイラによっては利用できなかったり、『%I64d』、『%I64u』で同等の機能を 用意していることがあります。 ・VC++2003.NET では『%lld』、『%llu』は使えないようです。 その代わりに『%I64d』、『%I64u』、『%I64o』、『%I64x』などが用意されています。 『I64』が 64 ビットを表しているようで他にも『I32』の 32 ビット版もあります。 ・使用例としては unsigned long long a = 0x0123456789ABCDEF; printf( "a = %I64u\n", a ); printf( "a = 0x%016I64X\n", a ); ↑ こんな感じになります。 ・使っているコ

    unsigned long long 型のフォーマット指定子
    sankaseki
    sankaseki 2008/05/02
    unsigned long long 型のフォーマット指定子 - 教えて!goo
  • セマフォとmutexの違いは?

    > >一般論としては、Mutexは「カウントを1に限定した」特殊化したSemaphoreです。 > とのことですが、これはWin32以外の環境だと > これ以上の違いはないと言うことでしょうか? 「一般論」と書いた意味を取り落とされているのではないかと思います。 「一般論としては〇〇」なのですから、「Win32以外の環境」も含めて「各論」では「必ずしも〇〇とは限らない」とご理解ください。 なお、ご指摘のとおり、あるリソースを排他的に利用するだけであればMutexを使用するかわりにカウントが1のSemaphoreを使用することができます。(特定の環境での、MutexとSemaphoreの環境依存の動作を除けば、ですが。) ではなぜ2種類が用意されている(用意されている環境が存在する)のかといえば、リソースの排他的利用は非常によくあることなので、これに特化した機能を用意すればより良いであろう、

    セマフォとmutexの違いは?
    sankaseki
    sankaseki 2008/05/02
    教えて!goo セマフォとmutexの違いは?
  • 変数の型でlong longとunsigned long longと言うのは何ですか?

    long longはANSI-Cの新しい改訂版C99で正式に採用されました。 C99以前のANSI-C対応処理系では独自拡張(gccなど)です。 環境の指定が無いので独自拡張は無視してANS-C99について解答します。 long longまたはlong long int=64ビット符号付き整数 unsigned long longまたはunsigned long long int=64ビット符号無し整数 定数の場合はLL(=long long)またはLLU(=unsigned long long)を付加する。 LL,LLU小文字でもよい。 1LL,0LL,100000000000lluなど long long系の整数使うライブラリ関数について ・printf/scanf系書式の追加 %lld(=long long) および%llu(=unsigned long long) ・その他ライブラ

    変数の型でlong longとunsigned long longと言うのは何ですか?
    sankaseki
    sankaseki 2008/05/02
    変数の型でlong longとunsigned long longと言うのは何ですか? - 教えて!goo
  • Cの関数からC++の関数(DLL)を呼ぶ方法について

    的に、呼ぶことができません。と言うのも、c++ には、関数のオーバーロードと 言う機能があって、同じ関数名でも、引数の並び(型や個数)が違うと別の関数として 扱われます。 この機能は c にはありませんから、たとえひとつしかその名前の関数を書いてなくても オーバーロードの仕組みを持った関数になるわけですから、それは c から呼ぶことは できません。 > C++関数からCの関数を呼ぶには extern "C" を使うのはわかる 正確には、そうじゃないんです。 c++ は、型のチェックが厳密ですから、関数を呼ぶ場合には、そのプロトタイプ宣言が 必須です。 普通に書くと、c の関数なのか、c++ の関数なのかの区別が付かないので、c の 関数なんだよ、と宣言をするのが extern "C" なんです。 で、題に戻って、「c++ で記述した関数を c から呼ぶには?」ということなの ですが、

    Cの関数からC++の関数(DLL)を呼ぶ方法について
    sankaseki
    sankaseki 2008/04/15
    Cの関数からC の関数(DLL)を呼ぶ方法について - 教えて!goo
  • LPCWSTRとchar

    質問なのです・・・ 現在、私は[Visual Stdio.Net 2005]を使って、C++のプログラミングをしようと思いまして、今日参考書を見てやってみたのですが、 charの配列を使って、文字列を格納しそれを使おうとしたら、LPCWSTRのキャストが必要というエラーがでました。 参考書だと普通に通るらしいのですが・・・Visual Stdio.Net 2003と2005の違いなのでしょか?わかる方教えていただけませんでしょうか??

    LPCWSTRとchar
    sankaseki
    sankaseki 2008/04/13
    教えて!goo LPCWSTRとchar
  • クラスの利点について

    回答ではありません。 短いプログラムだと一般的には<関数&構造体>がわかりやすいでしょう。 自分はクラスは、以下のようなものだと考えています。 1)継承を除けば、クラスと<関数&構造体>は同じもの。 2)doubleやintなどの型の拡張。 クラスの例   :複素数 オブジェクトの例:3i+1 データ例    :実数部(1)、虚数部(3) 操作の例    :2つの複素数の距離の計算 3)ある抽象化されたモノや型のデータや操作をひとまとめにしたもの。 クラスの例   :人間 オブジェクトの例:花子さん、太郎さん、…。 操作の例    :歩く データ例    :位置座標 クラスの利点をわかりやすく言うと 1)データと操作を一体化させる。 2)操作の名前を統一できる。 言語によって以下のような利点があります。 1)継承ができる。(多重継承などがあるものもある) (差分プログラミング) 2)データ

    クラスの利点について
    sankaseki
    sankaseki 2008/02/28
    クラスの利点について - 教えて!goo
  • ガンダムの後付けの過剰裏設定について。

    先ほど、ガンダムの話で友人と口論になってしまいました。 モビルスーツのデザインの話でしたが、ジオンにはツィマッド社・ジオニック社・MIP社という3つの軍事会社があり、各モビルスーツの形態や機能をみると、どこの会社で製造したか、提携先はどこか、を判断できるのだ、と友人は主張します。 私は、初代ガンダムのモビルスーツデザインは基が富野監督のラフスケッチで、大河原先生が仕上げていたものが多く、そんな細かい点まで設定はなかった。企業名が作品上に登場したのはゼータの「アナハイム・エレクトロニクス」くらいしか認識がないぞ。 と言ったら、 「お前は真のガンダムファンではない。」と怒りまくって帰ってしまいました。 いったいいつから後付けの裏設定が定着したのでしょうか。実際の話ではないのですから、ドイツの試作機のような展開を付けて疑似的な軍事資料を作っている事に疑問を抱きます。そのあたりの初めの展開をご存

    ガンダムの後付けの過剰裏設定について。
    sankaseki
    sankaseki 2008/02/04
    [!GTD::資料(いつか読む)]ガンダムの後付けの過剰裏設定について。 - 教えて!goo
  • 教えて!Firefox - ウェブブラウザ「Firefox」の疑問を解決- 教えて!goo

    より速く、より安全なウェブブラウザ「Firefox(ファイアーフォックス)」に関する疑問をみんなで解決。 全くの初心者から上級者までFirefoxの魅力を十分に味わうために、教えて!gooのユーザーみんながお手伝いします。 ※この特集は、環境貢献できる検索「緑のgoo」をもっと身近に感じる「緑のgoo版Firefox」公開を記念しての特別企画です。 関連リンク:Mozilla Japan - 緑のgoo - 緑のgoo版Firefox - gooスティック for Firefox - Firefox紹介ビデオ(YOU TUBE)

    sankaseki
    sankaseki 2007/12/21
    [!GTD::資料(いつか使う)]教えて!Firefox - ウェブブラウザ「Firefox」の疑問を解決- 教えて!goo