[過去ログ] Boost総合スレ part9 (981レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
681: 679 [sage] 2011/10/31(月) 02:40:46.69 AAS
>>680
680(1): デフォルトの名無しさん [sage] 2011/10/30(日) 21:20:35.33 AAS
timed_join
!!そうかっ!
感動した!
ありがとうございます。
682
(2): デフォルトの名無しさん [sage] 2011/11/01(火) 00:34:42.48 AAS
既存のクラス
namespace Hoge {
struct Fuga // 独自にカウンタを持つ
{
int count ;
int add_ref(void);
int release(void);
};
}
があってintrusive_ptrを使いたいんだけどnamespace Xに追加禁止の場合は
グローバルスコープにintrusive_ptr_add_refとintrusive_ptr_releaseを書くしか無い?
なにかうまい回避策とかあるのかな
683: デフォルトの名無しさん [sage] 2011/11/01(火) 01:47:51.17 AAS
>>682
namespace に追加禁止の意味がわからん。
684: デフォルトの名無しさん [sage] 2011/11/01(火) 01:54:37.13 AAS
Xってどこだよ、おいといて、>>682でHogeの中に置けないならnamespace boostに置く
685
(2): デフォルトの名無しさん [sage] 2011/11/02(水) 06:59:20.82 AAS
外部リンク[php]:melpon.tank.jp
「Thread Constructor」の説明に書いてある、「*this」って何のことか説明もらえたりしませんか?
呼ばれる関数内でthisとか書いてもthreadのインスタンスメソッドとか呼べないのですけど…。
さっぱりわかりません。
686: 685 [sage] 2011/11/02(水) 07:33:33.34 AAS
あ、何か急にわかりました。
スレ汚し失礼しました。
687: 685 [sage] 2011/11/02(水) 14:26:44.40 AAS
>>675
675(1): 672 [sage] 2011/10/25(火) 20:36:08.22 AAS
連続で失礼!
どちらかというと、Boostというより、C++のクラスについての質問になります。
よろしくお願いします。

外部リンク[php]:melpon.tank.jp
↑この辺り( Boost.Thread )を読んで試したりしているのですけど、
 boost::this_thread sleep()  ※Static member function sleep()
 boost::this_thread::sleep()  ※Non-member function sleep()
の二つのsleepがあるじゃないですか。それぞれ、
 指定した時間になるまで、現在のスレッドをサスペンドします
 指定した時間が経過するまで、現在のスレッドをサスペンドします
と若干引数の扱いが違いますが、似ています。

threadクラスの中に入れたのと、外(this_thread)に入れたのとで、どのように使い分ければいいのですか?
「中断ポイント」として、利用されるのが前者、程度の違いでしょうか?
何か他に大事なことを知らない気がしています…。
外部リンク[php]:melpon.tank.jp
これみると、後方互換性のために存在する感じのように見える。
「// 後方互換性のため」のスコープがどこまでなのかがハッキリしないが、たぶん後方互換性に含まれるんだろ。
ちなみに、boost1.47のヘッダみたら、「static」の方の引数の変数名が「this_thread」にあわせられていた。
確信無いので参考までに。
688: デフォルトの名無しさん [sage] 2011/11/02(水) 20:59:30.05 AAS
もう少しよく見ればthread::yield/sleepがthis_thread::yield/sleepを呼び出してるだけなのがわかっただろうになあ
689
(2): 679 [sage] 2011/11/05(土) 06:15:53.53 AAS
join()・timed_join()(成功)・detach()を複数回実行した時の動作は未定です?
timed_join()を繰り返して、起動した全てのスレが終了したか検知するコードを書いて今はうまく動いているのですけど、
幾つかのスレが終了している最中に、もしも別のスレが起動したらどうなるのかな?デタッチした領域は開放されているから再利用される可能性があるかな?なんて考えて…。
それとも、スレの起動箇所ごとに、アタッチするメモリ番地が決まってるのかな。
そうすると、forやwhileで起動する際に説明がつかないし…。
未定か。
690
(1): デフォルトの名無しさん [sage] 2011/11/05(土) 11:36:39.78 AAS
なに言ってるかわからないがたぶん心配してるようなことにはならないだろ。基本的なところを勘違いしてるように思える。
691: 689 [] 2011/11/06(日) 22:23:39.49 AAS
>>690
レスありがとうです。

スレッド周りのヘッダとcppと読んでみたのですけど、あまりわかりませんでした。
スレッドが終了したかどうかって、Win32 APIとどのようにやり取りするのかわからないのがマズイ気がする。
先は長い…。

ところで、さっきと今との、経過時間をmillisecで取得したいのですけど、Boostを利用すると比較的容易な気がするのですが、どのクラスを利用すればいいでしょうか?
boost::posix_time付近で探しているところですが。
692: 689 [sage] 2011/11/06(日) 22:34:54.18 AAS
ageてしまいました。すみません。
Win32APIでみつけることができました。GetTickCountで差分をとればいけそうでした。

もしBoostで、同じようなことが出来れば御教示ください。出来れば環境依存は少ない方がいいと思いますし。
693: デフォルトの名無しさん [sage] 2011/11/06(日) 22:45:34.52 AAS
boost::timer
694: デフォルトの名無しさん [sage] 2011/11/06(日) 23:13:37.80 AAS
chrono
695: デフォルトの名無しさん [sage] 2011/11/07(月) 06:41:56.52 AAS
いつもチンコ?って思っちまう
696
(2): デフォルトの名無しさん [sage] 2011/11/08(火) 17:34:26.68 AAS
半年くらい前までは[スマポ]で検索するとスマートポインタのサイトがずらっと出てきたのに
今出てこなくなってるな
こういう新しいものが出たときにもともとあった情報の取得の障害になることをなんていうんだろうね
697: デフォルトの名無しさん [sage] 2011/11/08(火) 17:36:23.99 AAS
産業革命
698: デフォルトの名無しさん [sage] 2011/11/08(火) 17:54:00.58 AAS
シャドウイング
699: デフォルトの名無しさん [sage] 2011/11/08(火) 21:56:57.82 AAS
オレオレ略語使いの憂鬱
700: デフォルトの名無しさん [sage] 2011/11/09(水) 12:34:52.49 AAS
スマポなんて初めて聞いたぞ
701: デフォルトの名無しさん [sage] 2011/11/09(水) 12:38:10.56 AAS
ナマポは生活保護か生ポインタか
702: デフォルトの名無しさん [sage] 2011/11/12(土) 15:27:47.67 AAS
むしろ誰も使ってなかったからグーグル先生の超推理でスマートポインタにヒットしてたんだろ。

いまは使われるようになったからな。
703: デフォルトの名無しさん [sage] 2011/11/12(土) 18:32:09.00 AAS
>>696
10年以上前の話だがCの関数をググれてたのが
PHPに占領されたときは殺意を覚えた
704: デフォルトの名無しさん [sage] 2011/11/12(土) 18:42:18.38 AAS
>>696
いまは「スマ」と打つとsmileageが出てくるように・・・まだなってないか
705
(1): デフォルトの名無しさん [sage] 2011/11/12(土) 20:10:00.06 AAS
clangが規格に忠実すぎてBootのソースがコンパイルできん。
1-
あと 276 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.023s