問題タブ [process]
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.
process - エンジニアの説明責任とコード レビュー プロセス
あなたの「エンタープライズ」作業環境では、エンジニアはコード検査と単体テストの実行についてどのように責任を負っていますか? ソフトウェアの品質を確保するために、どのようなプロセス (正式な方法論またはカスタム プロセス) に従っていますか? 成果物に開発者の「サインオフ」シートを実装したことがありますか?
前もって感謝します!
更新: Code Collaborator を使用して検査を行っていることを忘れていました。問題は、人々に「理解」してもらい、中核となる人々のグループの外でそれを行うことに同意してもらうことです。以下で stalbot が指摘しているように、これは文化の変化ですが、問題は、レビューや単体テストなどの品質イニシアチブを促進するために文化をどのように変えるかということです。
java - 親が終了したときに子プロセスを終了させるにはどうすればよいですか?
ProcessBuilderを使用して子プロセスを起動していますが、親プロセスが終了する場合は子プロセスを終了する必要があります。通常の状況では、私のコードは子を適切に停止しています。ただし、OSに親を強制終了させると、子は実行を継続します。
親が殺されたときに終了するように、子プロセスを親に「結び付ける」方法はありますか?
同様の質問:
process - コード/ソフトウェア製品の品質を定義するために、あなたの会社はどのような統計を収集していますか
私が知っているほとんどのプログラミング会社/マネージャーは、振り返ってみると、作成/解決されたバグの数という観点からのみ品質を定義できます。
ただし、ほとんどの優れたプログラマーは、コードをいじり始めると、本質的に品質を感じることができます。(右?)
あなたが知っているプログラミング会社は、この情報を組織が品質を確保するために測定および追跡できるメトリックに正常に変換しましたか?
不満を持ったマネージャーから、実際の品質に指を置くことができないという怒鳴り声をよく耳にするので、私は尋ねます。しかし、HoneyWellのような一部の組織には、プログラマーのパフォーマンスを追跡するための数値がたくさんあります。これらはすべて数値に変換され、評価中にチェックマークを付けることができます。したがって、コミュニティ全体に、彼らが知っている統計を引き出すための私の質問です。
厄介なコードをうまく測定できるツールに関する提案も役立ちます。
java - CreateProcess() によって起動された JVM がクラスパス ライブラリを失う
CreateProcess (または _spawnv()) を使用して、Windows VC++ 6 プログラムから次のコマンド ライン (プロセス) を起動します。
- java -cp c:\dir\updates.jar;c:\dir\main.jar メイン
そして、updates.jar 内のクラスの更新 (main.jar 内の一部をオーバーライドする) が読み取られないか、見つからない。これは、updates.jar ライブラリが見つからないか読み取れないかのようです。
ショートカットから、または適切なコマンドラインから同じ行を起動すると、すべてが検出され、適切に実行されます。
コマンド ラインから JVM を起動し、それを実行したままにし、実行可能なスタブ (上記) を起動すると、すべて正常に動作します。(これにより、問題がファイルの権利の問題であるように見えます)。
どんな洞察も大歓迎です!
――エドワード
c# - c#でctrl + cをプロセスに送信するにはどうすればよいですか?
コマンドライン実行可能ファイルのラッパー クラスを作成しています。この exe は、コマンド プロンプト シェルでstdin
ヒットするまでからの入力を受け入れます。ヒットした場合、入力に基づいてCtrl+C
出力を出力します。そのプレスを C# コードでシミュレートし、kill コマンドを .NETオブジェクトに送信stdout
したいと考えています。を呼び出してみましたが、プロセスの. 私のやり方が間違っているのではないでしょうか?使用しようとしているコードは次のとおりです。Ctrl+C
Process
Process.Kill()
StandardOutput
StreamReader
stdout
exeを手動で実行したときにデータが戻ってきても、出力は常に空です。
編集:ちなみにこれはC#2.0です。
c - 親が終了した後に子プロセスを終了させる方法は?
ちょうど 1 つの子プロセスを生成するプロセスがあるとします。親プロセスが何らかの理由で終了した場合 (通常または異常、強制終了、^C、失敗のアサートなど)、子プロセスを終了させたいと考えています。それを正しく行う方法は?
スタックオーバーフローに関するいくつかの同様の質問:
- (以前に質問されました)親プロセスが終了したときに子プロセスを終了させるにはどうすればよいですか?
- (後で尋ねられます) fork() で作成された子プロセスは、親プロセスが強制終了されると自動的に強制終了されますか?
Windowsの stackoverflow に関する同様の質問:
linux - Linux で SSH クライアントを閉じた後にバックグラウンド プロセスが停止しないようにする方法
SSH (Putty) を介して Linux マシンで作業しています。夜間にプロセスを実行したままにする必要があるため、プロセスをバックグラウンドで開始し (コマンドの末尾にアンパサンドを付けて)、stdout をファイルにリダイレクトすることでそれを実行できると考えました。
驚いたことに、それはうまくいきません。Putty ウィンドウを閉じるとすぐに、プロセスが停止します。
どうすればそれを防ぐことができますか??
process - FreeBSD の無限ループ
私は常に segfaults を行うスクリプトを持っています - segfault が python libxml バインディングにあるので解決できない問題 - それらを書きませんでした。わかりましたので、Linux では inf.loop を実行していたので、スクリプトが終了すると次のように再起動します。
まあ、FreeBSD では /bin/bash が見つからないようなので、うまくいきません。
何か案は?cron はオプションではないことを考慮してください。許可されるダウンタイムは数秒です。
c# - プロセスを生成し、.NETでそのSTDOUTをキャプチャする方法は?
コンソールアプリケーションである子プロセスを生成し、その出力をキャプチャする必要があります。
メソッドの次のコードを作成しました。
ただし、これは何も返しません。イベントがコールバックされているとは思わないOutputDataReceived
か、WaitForExit()
コマンドがスレッドをブロックしている可能性があるため、コールバックされることはありません。
何かアドバイス?
編集:私はコールバックであまりにも一生懸命に努力していたようです。行うこと:
正常に動作しているように見えます。
process - リリースの柔軟性を維持しながら、コード共有を促進し、バグ追跡のオーバーヘッドを制限するにはどうすればよいですか?
個別にリリースされた複数のアーティファクトに影響を与えるバグの変更やテスト作業をどのように追跡していますか?
コード共有は、コードを介したパスの総数を減らすため、優れています。つまり、より少ない変更とより少ないバグ (またはより少ない変更でより多くのバグに対処) でより多くの影響を与えることを意味します。たとえば、同じファイル処理パッケージまたはモデル パッケージを使用する検索ツールとインデクサーを構築する場合があります。
変更がすべての適切なコンポーネントでテストされ、どの変更がどのリリース済みツールに含まれていたかを追跡できるようにする必要があります。また、すべてのアプリケーションで同時に変更をリリースする必要はありません。
目標: 1 つのバグをテストし、リリースされた各アプリケーションに対して個別に追跡をスケジュールします。アーキテクチャを理解する自動化されたシステムにより、正しい選択を行うことができます。
バグ分割リリース シナリオ:
ユーティリティ ライブラリのパフォーマンス修正を含む検索ツールのパッチをリリースする場合があります。検索ツールにとって重要な修正プログラムは、インデクサーではあまり見えないため、次のメンテナンス リリースまで待つことができます。検索パッチで 1 つのバグをスケジュール、追跡、リリースし、インデクサーの次のメンテナンス リリースまで延期したいと考えています。
そのため、追跡システム (JIRA) でバグを作成すると、魔法のように複数のオブジェクトになるようにしたいと考えています。
- 問題を説明し、開発作業を追跡する主要な問題
- テスト作業を追跡し、影響を受けるアプリケーションごとにこの問題がどのようにリリースされたかを追跡できるようにする一連のタスク。
どの変更がどのリリースに影響を与えるかを知らずに、または人々に多くの重複したバグを入力させることなく、より多くのコード共有を促進するために、コード共有のユーザー エクスペリエンスを低労力で作成するにはどうすればよいでしょうか?
Eclipse から Linux ディストリビューションまでの大規模なプロジェクトは、この種の問題に直面しており、どのように解決したのか疑問に思っていることは確かです (次はそれらについて詳しく説明します)。
この種の状況を経験したことがある人はいますか?どのように対処しましたか?