問題タブ [multiple-processes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 同じプロセス名の Android リモート サービス
現在、リモート サービス コンポーネントを使用して Android ソフトウェアの開発を行っています。
実際、私は 2 つのリモート サービスを持っています。それぞれサービス A とサービス B と呼びましょう (サービス A は、Manifest.xml ファイルでサービス B の前に宣言されています)。これらは 2 つの異なることを行います。
2 つのサービスには、「android:process」という同じ属性値があります (どちらも :remote)。2 つのサービスは、ほとんどの状況でうまく機能します。
しかし、サービス A が正常に開始されない場合がある (実際にはこの状況が発生する可能性が高い) ことがわかりました。この問題を解決するために、サービス B の 'android:process' 属性値を変更してみました。そして驚いたことに、すべてが正常に戻ります。どちらのサービスも問題なく動作します。
Android システムでは、同じ名前で pid が異なる 2 つのプロセスが存在することを許可する必要があると考えました。また、「android:process」属性の値が問題の原因であってはなりません。私がしたことがこの問題を解決できる理由を説明できる人はいますか?
regex - 正規表現を使用した Tcl で複数のプロセスを期待する
期待してコマンドを同時に送信することで、同時に2つのプロセスを生成しようとしています。
正規表現の一致を取得できず、コンテンツがありません
私が照合しているデータは次のとおりです。
この試合から値「2」と「ACT」を取得しようとしています。
と の場合のように、特定のスポーン プロセスに固有のものを指定する必要がexpect
ありsend
ますか? はいの場合、どうすればいいですか?
ありがとう
python - 実行時間の長い Python プログラムと通信する
あるシリアル ポートで既にメッセージをリッスンし、それらを別のシリアル ポートに転送する、サーバー上で実行時間の長い Python プログラムがあります。
そのプログラムが Web サーバー (最終的にはラップトップの Web ブラウザーからデータを取得する) からデータを受け入れるようにするには、どうすればよいですか?
これまでに見たオプションは次のとおりです。
「サーバー上で実行されている python プログラムと通信する」サーバーの解決策は 、私にはうまくいかないようです。これは、Web サーバーが既にポート 80 で実行されている (他のページにサービスを提供している) ためです。
データをファイルに書き込む CGI スクリプトを用意し、実行時間の長いスクリプトがそのファイルからデータを読み取ります。フラッシュの消耗が懸念されるシステムでこれを行うのは少し気が進まない.
どういうわけか (?) 実行時間の長いスクリプトを FastCGI スクリプトに変換します。FastCGI スクリプトには、これまで実行していたすべての機能に加えて、Web サーバーからデータを受け入れるための新しい機能が含まれています。
どういうわけか (?) 実行時間の長いスクリプトを WSGI スクリプトに変換します。WSGI スクリプトには、これまで実行していたすべての機能に加えて、Web サーバーからデータを受け入れるための新しい機能が含まれています。
asynchat / asyncore / sockets / twistedを使用して長時間実行されるスクリプトと通信する Web サーバーが起動する簡単な Web スクリプトを作成します。同じサーバー上で実行されている Python スクリプトと Web サーバー (おそらくそれらの間に短時間の CGI スクリプトまたは FastCGI スクリプトを使用) を実行しています。
おそらく他のオプションですか?
Web サーバーが既に稼働している Python プログラムにデータを渡すための標準的な「pythonic」の方法はありますか? (Web サーバーが Python プログラムを開始し、新しく開始されたプログラムにデータを渡すというより一般的なケースではありません)。
(関係ないと思われる詳細: 私のサーバーは、Beaglebone Black で実行されている Ubuntu Linux で Lighttpd を実行しています)。
(おそらく、この質問はhttps://softwareengineering.stackexchange.com/に移動する必要がありますか?)
debugging - 各下位終了後にデバッグ セッションが一時停止しないようにする
gdb
の非常に便利な多重劣等サポートを使用して、プロセスのツリーをデバッグしています。
そして、まだスポーンされていない下位のいくつかの将来のブレークポイントの1つに到達するまで、物事を実行させる必要があります。
ただし、gdb
下位が正常に終了するたびに一時停止するか、少なくとも親wait()
が戻ることができるように下位のクリーンアップをブロックしているようです。
だから私は際限なくしなければなりません:
続けること。約 70 回、子の子の子で目的のブレークポイントに到達するまでに。
プロセスの終了を停止イベントとして扱い、 (デフォルト) に設定されているため、1 つのスレッドが停止すると、すべての下位クラスのすべてのスレッドが停止します。しかし、このinferiorは終了しており、通常の停止イベントではないため、それだけではいけません。まず別のプロセスに切り替える必要があります。gdb
non-stop
off
cont
各下位出口で gdb の一時停止を停止する方法はありますか? 私はトリックを行うことを期待follow-fork-mode parent
していたでしょうが、劣ったものが終了すると停止したいようです.schedule-multiple on
gdb
「skip proc-exit」のようなもの、または停止しないようにハンドラー ポリシーを変更できる仮想シグナルを探していると思います。
set non-stop on
正しい答えのように思えますが、複数の劣った人にとっては壊れていると思います。
を使用するnon-stop on
と、最初の終了トラップの後、gdb
の内部状態は下位 1 が実行中であることを示します。
しかし、カーネルはそれをブロックされていると見なしますptrace_stop
:
gdb
...そして、切り離されるか、殺されるまで進行しません。プロセスへのシグナルは無視され、interrupt
ingdb
は効果がありません。
GNU gdb (GDB) Fedora 7.7.1-18.fc20
x86_64で使用しています。
opengl - 複数のプロセスで同じシェーダー コードを使用する
シェーダー可変変数と均一変数は、個別のアプリケーション間で一意ですか?
1 つのユニフォームを除いて、同じ変数名を持つシェーダー コードを使用する複数のプロセス (実際には個別のプログラム) が必要な状況があります。各プロセスでは、シェーダーが他のプロセスから独立している必要があります。glCreateProgram() と glCreateShader() を呼び出すと、各プロセスのプログラムとシェーダーの ID 番号が同じになるため、プロセス「a」はプロセス「b」について何も知らないように見えます。ただし、プロセス 'b' で一意のユニフォームを使用すると、プロセス 'b' で画像が正しく表示されません。プロセス「a」のシェーダー コードに、プロセス「b」で使用されるユニフォームが含まれている場合、すべて正常に動作します。プロセス「a」で何かを変更すると、プロセス「b」に影響するのはなぜですか?
すべてのプロセスで同じシェーダー ソースを使用する必要があります。ただし、最初のプロセスではなく、他のすべてのプロセスで使用する必要がある 1 つのユニフォームを使用します。
すべてのアプリケーションで:
等々。
プロセス「a」のシェーダー コード:
他のプロセスのシェーダー コード:
上記の方法では無効なビューが生成され、色が正しくありません。アプリケーション「a」のコードに一意のユニフォームが含まれていて、ユニフォームの値が 0.0f に設定されている場合、問題はありません。したがって、すべてのプロセスのシェーダー コードが次のようになっているとします。
CPU 上のアプリケーション「a」は次のことを行います。
すべての意見は正しいです。私は何が欠けていますか?
長い投稿で申し訳ありませんが、問題を適切に説明するのに苦労しました。
php - FPDF PHPデータを含む複数のPDF - ヘッダーとフッターが異なる
FPDFとPHPを使用して、DBからのデータに応じて1、2、または3つのPDFを作成しようとしています。1 つの PDF を作成する必要がある場合は、それで十分です。しかし、2つまたは3つ作成する必要がある場合、一部のクラスを再宣言できないため、問題が発生します。
生成する必要がある PDF の数をテストする PHP コードを以下に示します。
FPDF コードの下 - 2 つの画像 (ヘッダーとフッター) と、var. 最初の PDF では Ok が生成されますが、FPDF の一部のクラスが再宣言されているため、2 番目と 3 番目ではエラーが返されます。
Ok。それでおしまい!2 番目と 3 番目の FPDF コードは上記と同じですが、PDF はヘッダーとフッターが異なるため、画像ディレクトリが異なるだけです。あなたの助けと時間を前もってありがとう:)
cpu-speed - CPU の速度を 2 倍にすると、システムは 2 倍のプロセスを処理できるようになりますか?
CPU の速度が 2 倍になると、システムは 2 倍のプロセスを処理できますか? つまり、コンテキストスイッチを無視すると仮定します。
android - Android で、複数のプロセスが同じファイルに書き込むのを防ぐ方法
私のアプリでは、一意の ID が生成される前に生成されたかどうかを確認し、生成されていない場合は生成してファイルに書き込みます。しかし、複数プロセスのアプリでは、複数のプロセスが同じファイルに書き込もうとすると、以前に生成された uid がないことがわかった場合に問題があると感じます。
Androidでは、複数のプロセスが同じファイルに書き込むのを防ぐ方法は?
multithreading - サーバー内のプロセス間でのスレッドの分散のパフォーマンスへの影響
質問のタイトルが変です、すみません。
私は現在サーバーの設計に取り組んでおり、同僚の 1 人から、複数のプロセスを使用する必要があるというコメントがありました。同じマシン上の複数のプロセスにまたがる同じ数のスレッド)
これを引き起こす唯一の原因 (OS のスケジューリングが悪いこと以外) は、競合の増加 (メモリ アロケータなど) によるものですが、それがどれほど重要かはわかりません。
これは「ベストプラクティス」ですか?誰かが私と共有できるベンチマークを持っていますか? もちろん、答えはプラットフォームに依存する可能性があります (HP-UX、AIX、Solaris についてはある程度気にする必要がありますが、主に windows/linux/osx に興味があります)。
もちろん、クラッシュの影響を制限するためのプロセスの分離など、マルチプロセス アーキテクチャを使用する利点は他にもありますが、この質問のパフォーマンスに興味があります。
状況によっては、サーバーは長時間実行されるステートフルな接続を処理するため (そのため、他のサーバー プロセスに移行することはできません)、大量のデータを送り返し、サーバー マシン上で多くのローカル DB 処理を引き起こす可能性もあります。インプロセスで proactor アーキテクチャを使用し、C++ で実装する予定です。サーバーは、再起動する必要なく数週間または数か月実行されることが期待されます (ただし、これは、新しいインスタンスを何らかのプロキシの下で透過的にローテーションすることによって実装される場合があります)。
また、マルチプロセス アーキテクチャを使用します。私の懸念は、プロセスへの接続のスケジュール設定です。
c - 親プロセスが子の戻り変数を取得しない
これはクラス用なので、子プロセスが戻ったときに変数 nChars が設定されていない理由を理解しようとしています。waitpid() が子プロセスを取得することを読みましたが、nChars を印刷しようとすると、子の nChars がコマンドライン文字の数である場合でもゼロが表示されます