![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
現在赤黒木の改良を考えているのですが、赤黒木におけるノードの挿入操作は、ノードが多くなるとリバランスに非常に時間がかかります。
そこで、プログラム内で挿入操作が必要となった時に、挿入操作を行うスレッド(もしくはプロセス)を新規で作成し、挿入に関してはそのスレッド、その他は元のスレッドが実行というように並列で行いたいのですが、どのようにスレッドを作れば良いか分からない為、教えてください。
挿入における排他制御(フラグ管理)などのアルゴリズムの部分は勉強したので、スレッドの作成方法が知りたいです。また、再帰を頻繁に行うプログラムなので、スレッド作成数の上限も設定したいです。
参考にしている論文
http://uc.alerta.cl/xmlui/bitstream/handle/12345 …
なお、開発環境はVisual C++ 2012で、OpenMPも使用できます。ただオブジェクト指向に慣れていないため、ほとんどC言語で書いています。
以下に、簡単なソース、及び図を載せますので、お手数をおかけしますがアドバイスをいただけないでしょうか?
(簡単なソース)
main(){
x = f1();
}
int f1(){
if() y = f1(); //再帰を頻繁に行います
if() insert(); //挿入はスレッドを新規に作成し、元のスレッドと並列で実行(複数の挿入スレッドが同時に存在しうる)
return y;
}
p.s.
同じ内容の質問をyahoo知恵袋でも出しているのですが、回答してくれた方への質問に答えたりが出来ない為、こちらに転載させていただきました。
また、CreateThread()で実現できそうというアドバイスも頂けたのですが、もう少し具体的な実装方法が調べても分からなかったので、その点に関してのアドバイスでも十分ですので、よろしくお願い致します。
![「C++における並列処理に関する質問です。」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/1/1369131_5497d2eec5793/M.jpg)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# C言語 3 2022/10/04 15:07
- Windows Vista・XP やっぱり現代のPCにWindowsXPを入れるのは無理なのでしょうか? 4 2022/08/03 09:58
- Excel(エクセル) Googleスプレッドシートで、あるセルの値に応じて行を自動挿入したい 急いでいます! くわしい方、 3 2023/03/06 19:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CPUの考え方を教えてください ...
-
ツリービューのノードをダブル...
-
vbsのDOMDocumentで要素のText...
-
ルート要素ノードが2個ある場合?
-
TreeViewの再表示のちらつきを...
-
VisualBasic.net(2008) ツリー...
-
各ノードの行数取得
-
C#でtreeviewの指定ノードを選...
-
CTreeCtrlで、あるノード以下だ...
-
同じタグ名の項目取得
-
コンテキストメニュークリック...
-
複数のマックPCによる数値計算...
-
XMLで要素が記述された順番に意...
-
XMLファイル内のデータ(値)を変...
-
UTF-8でエンコーディングとはど...
-
VBSでxmlの値を書き換えたい
-
Access VBAでXMLが読み込めない
-
東芝のDynabookなのですがアン...
-
XMLを出力する時のエラー原因
-
XML、XSLTの適応エラー(IEから...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CPUの考え方を教えてください ...
-
昔Winnyってありましたけど、あ...
-
SNMP リンクダウンとノードダ...
-
ルート要素ノードが2個ある場合?
-
あるノードリストに、特定の名...
-
同じタグ名の項目取得
-
コンテキストメニュークリック...
-
ノードとは
-
XML文書の指定した属性値を持つ...
-
ツリービューのノードをダブル...
-
2分探索木の高さを求めるプロ...
-
C# TreeView 効率良いノード追...
-
VB6.0でDOMを使用して...
-
スケールフリーネットワークをC...
-
C#でtreeviewの指定ノードを選...
-
複数のマックPCによる数値計算...
-
TreeViewに重複する値をセット
-
ツリービューの使い方が・・・
-
各ノードの行数取得
-
TreeViewの再表示のちらつきを...
おすすめ情報