問題タブ [program-flow]

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.

0 投票する
3 に答える
1279 参照

user-interface - Web プログラムと比べて、GUI やゲーム プログラムの流れはどうですか

私はしばらくの間 Web アプリケーションを開発しており、GUI とゲーム アプリケーションの開発に足を踏み入れました。

Web アプリケーション (私にとっては php) では、ファイルに対して要求が行われ、そのファイルには、情報をメモリに処理するために必要なすべてのファイルが含まれており、フローは要求ごとに上から下になります。(主に)

ゲームの場合、アクションがゲーム ループ内で発生することは知っていますが、ゲームのさまざまな要素 (メニュー システム、GUI、アセットのロード、3D ワールド) を単一のループにレイヤー化して、一定のロードとアンロードを行うにはどうすればよいでしょうか。もの。

GUI プログラムについても同じですが、ある種の「アプリケーション ループ」があると思います。

ほとんどの項目はメモリに呼び出されてからアクセスされますか?項目は必要に応じてリンクされ、メモリにロードされますか?

私が Web アプリケーションをより速く開発するのに役立ったのは、プログラムの流れを理解したときです。詳細に説明する必要はなく、一般的なアイデアや疑似コードだけです。

0 投票する
4 に答える
180 参照

c# - キャンセル スキームの作成

ソースコードを分析するプログラムがあります。ディレクトリを再帰的に調べてすべてのプロジェクトを見つけ、次にプロジェクトを再帰的に調べてすべてのソース コードを見つけることができます。

ユーザーがコードの解析を停止できるキャンセル プロセス ボタンを作成したいと考えています。バックグラウンド ワーカーでコードの解析を実行します。キャンセルイベントを監視できるようにしたい。

問題は、コードを編集してそのアイテムをチェックし、GUI に戻るようにする方法を考え出すことです。解析プロセスは、いくつかの方法で深くなります。

はるかに小さなプロセスで、キャンセルが要求されたかどうかを示す bool を持つスレッドセーフなシングルトンを正常に使用し、実行中のループを停止します。

このキャンセル リクエストをコードに組み込む最良の方法は何でしょうか?

編集: これは、John Saunders の回答に触発されたアイデアです。

Cancel Singleton の変更を監視する処理スレッドでバックグラウンド スレッドを実行し、そのプロセスから例外をスローするとどうなりますか? これは良い習慣のように思えますか? これは意図したとおりに機能しません

EDIT 2: ジョン・サンダースの答えは今のところ最良のようです。シングルトンが今のところ真の場合、私は自分の例外をスローします。他の解決策が提案されているかどうかを確認するのを待ちます

0 投票する
10 に答える
2650 参照

c - C でのプログラム フローの中断

反復ごとに変数の値をインクリメントするループを実行しています。キーボードのキーを押してループを停止し、変数の最終値を報告できるようにしたいと考えています。Cでこれを行う方法がわかりません。これを行うための本当にシンプルで簡単な方法を見落としているように見えるので、愚かだと感じますが、キーを押すまでループを停止しようとします。キーボードは、本質的に私が望むものとは正反対です。

基本的に私がやりたいことは次のようなものです:

p>

それは理にかなっていますか?とにかく、Cでこれを行う方法に関するヒントはありますか?

0 投票する
5 に答える
2142 参照

objective-c - メソッドまたは関数の呼び出し元を見つける方法は?

有用な情報を出力するのに役立つデバッグ関数またはメソッドを書きたいと思っています。呼び出されると、次のものが必要になります。

  • 呼び出し元オブジェクトのメモリ アドレス (オブジェクトによって呼び出された場合)
  • 呼び出し元のメソッド シグネチャ (またはメソッドの名前)、または関数の名前
  • そのメソッドまたは関数を所有するクラス名

たくさんのパラメーターを渡さずにこの情報を取得することは可能ですか?

私は次のようなものを作りたい:

次に、すべてのメソッドと関数に入り、何が起こっているかについての有用な情報を出力するのに役立ちます.

0 投票する
1 に答える
186 参照

.net - ミューテックスを再帰的にしない方法

2 回目にミューテックスをロックしたときにフローがロックされることを期待して、以下のコードを実行しました。2回実行した後、停止せずに何度もロックできることに気付きました(同じスレッドを想定)。この動作を変更するにはどうすればよいですか?

0 投票する
2 に答える
121 参照

java - プログラムの流れの確認

以下のコードが正常に機能するかどうかを誰かに教えてもらえますか?

0 投票する
3 に答える
6065 参照

java - Java の内部クラスの包含クラスへのアクセス

これが私が今していることです。スーパークラスにアクセスするより良い方法はありますか?

私は Google Web Toolkit でプログラミングしていますが、これは本当に一般的な Java の質問だと思います。

0 投票する
12 に答える
1051 参照

java - Java 言語規則。ゲッター/セッター

独自のクラス内の変数にアクセスするときに優先されるもの。「e.number」または「e.getNumber()」?

編集:
最も重要な質問は、呼び出したメソッドがゲッターまたはセッターであることをコンパイラが認識しているかどうかです。したがって、次のようe.setNumber(5);に高速になりますe.number = 5;

0 投票する
12 に答える
9578 参照

language-agnostic - プログラミングスタイル:ガード条件が満たされない場合は、早く戻る必要がありますか?

私が時々疑問に思ったことの1つは、以下に示す2つのスタイル(ある場合)のうち、どちらが優れているかということです。ガード条件が満たされていない場合はすぐに戻るのが良いですか、それともガード条件満たされた場合にのみ他のことを行うべきですか?

議論のために、ガード条件は、例外をスローすることによって制御フローに影響を与える可能性のあるものではなく、要素がコレクションにあるかどうかを確認するなど、ブール値を返す単純なテストであると想定してください。また、メソッド/関数がエディターのスクロールを必要としないほど短いと仮定します。

0 投票する
5 に答える
246 参照

c++ - C++ プログラム フロー: オブジェクト内のソケットとメイン関数

ソケットを使用した C++ プログラム フローに関して、ややこしい問題があります。

基本的に私が持っているのはこれです: ソケットをリッスンし、一度に 1 つの接続を受け入れる単純なコマンドライン ソケット サーバー プログラム。その接続が失われると、さらなる接続のために開かれます。

そのソケット通信システムはクラスに含まれています。このクラスは、接続を受信し、受信したデータをクライアントにミラーリングすることができます。ただし、クラスはオブジェクト指向ではない UNIX ソケットを使用します。

私の問題は、私の main() 関数に、そのオブジェクトのインスタンスを作成する行が 1 行あることです。その後、オブジェクトは初期化されて待機します。しかし、接続が得られるとすぐに、オブジェクトの初期化関数が戻り、それが起こると、プログラムは終了します。プログラムが終了する前に、このオブジェクトが削除されるまでどうにかして待つにはどうすればよいですか?

概要:

  1. main() オブジェクトのインスタンスを作成する
  2. オブジェクトがリッスンする
  3. 接続を受信しました
  4. オブジェクトの初期化関数が返す
  5. main() 終了 (!)

私が望むのは、そのオブジェクトが終了する前に、そのオブジェクトが行っていることを完了するまで (別名、それ自体を削除する)、 main() が何らかの形で遅延することです。

何かご意見は?