C++のプログラムをバックグラウンドで実行する方法はないでしょうか?
具体的には
http://www.atmarkit.co.jp/fdotnet/dotnettips/436 …
のページにあるようなプログラムをC++で作成したいのです。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
CreateThread でスレッドを作る。
そのスレッドが、バックグラウンドで実行したいプログラムを CreateProcess で起動する。
そのスレッドは、そのプロセスの終了を WaitForSingleObject などで待つ。
WaitForSingleObject が終わったら、スレッドも終了。
こんな感じでいいんじゃないですか?
ただし、個々のプロセスの「進捗状況」を知る、というのは、どうやればいいのかさっぱりわかりませんが。
No.3
- 回答日時:
環境が不明ですので、一般的な回答としては次のようになります。
1. マルチタスク化する。オペレーティングシステムがマルチタスクに対応していない場合、あるいはオペレーティングシステムが存在しない場合、マルチタスク環境を独自に実装する。
その場合、例外処理等もマルチタスク化する必要があります。ABIを調査するなどして、自力で対応してください。
2. コンピュータをもう一台用意する。最低限、マルチプロセッサにする。ただし、オペレーティングシステムがSMPとして扱ってしまう場合、オペレーティングシステムを使用しないなど、相応の対処が必要です。
1.か2.のどちらかです。
No.2
- 回答日時:
環境が不明です。
C++との事ですがWindows環境ならば、
Cのランタイムを使っているまたは、
それらを使っている可能性のあるライブラリを
使用しているなどの場合は_beginthreadexの方が良いです。
Linuxならpthread_createとかexeclpとか。
>「進捗状況」を知る、というのは
実行するプロセスが共有メモリ、パイプ、ソケットなどを介して
進捗情報を通知しない限りできないのでは無いでしょうか??
#標準出力を使うという手も。。。?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# 至急お願いします。C言語で.imgのファイルを読み込んで1バイトづつ出力するプログラムを作りたいので 3 2023/01/16 22:49
- C言語・C++・C# C++はWindows運用に必須なのか 6 2022/10/15 08:33
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- その他(プログラミング・Web制作) PythonのプログラムのDirに関する質問です 3 2022/12/04 17:01
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
VC++から引数付きexeファイルの実行
C言語・C++・C#
-
C++でシェルを起動
C言語・C++・C#
-
バックグラウンドで実行されるプログラムを作るには?
C言語・C++・C#
-
-
4
コンボボックス表示文字列を取得する場合
C言語・C++・C#
-
5
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
6
system関数でのシェル起動について
C言語・C++・C#
-
7
常駐プログラム
C言語・C++・C#
-
8
C言語初心者の質問失礼します。
C言語・C++・C#
-
9
C言語で複数列のデータを1列のみ読み込みたい
C言語・C++・C#
-
10
静的でないメンバ関数の呼び出しが正しくありません
C言語・C++・C#
-
11
配列の要素数に変数を入れたいときには
C言語・C++・C#
-
12
テキストファイルから読み込んだ文字が文字化けします。
C言語・C++・C#
-
13
C言語で特定列だけを抽出して配列に格納し、出力したいです。 読み込みファイル(read.txt) 0
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バックグラウンドのプロセスの...
-
Visual C++からpingを実行して...
-
explorer.exeが異様にメモリを食う
-
VB6.0 SHELLで起動...
-
ウインドウのプロセス終了について
-
C#でのbatファイル実行結果取得
-
プロセスIDの取得方法について
-
非表示になったエクセルは?
-
完全な乱数を生成する方法
-
起動しているプロセスの確認
-
子プロセスの管理
-
forkについて
-
Process.Startの戻り値を後で取得
-
execvpでのcdコマンドについて。
-
Windows7アプリケーションのプ...
-
タスクマネージャーのプロセス...
-
プロセスIDからウィンドウハ...
-
タスクマネージャの「プロセス...
-
API関数 GetExitCodeProcess
-
セマフォとmutexの違いは?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バックグラウンドのプロセスの...
-
explorer.exeが異様にメモリを食う
-
タスクマネージャーのプロセス...
-
C#でのbatファイル実行結果取得
-
プロセスのアタッチ・デタッチ...
-
VB6.0 SHELLで起動...
-
プロセスIDからウィンドウハ...
-
Process.Startの戻り値を後で取得
-
ウィンドウのタイトルからプロ...
-
他のEXEが起動しているかの確認
-
ADOでアクセスのレコードに...
-
怪しいプロセス教えてください。
-
別のプロセスの関数を呼び出す...
-
Linuxでのスレッド間メッセージ...
-
C++のプログラムをバックグラウ...
-
C++でシェルを起動
-
プロセスIDの取得方法について
-
OSPFでプロセスを分ける意義に...
-
非表示になったエクセルは?
-
Windowsでのfork方法
おすすめ情報