同じプログラムの2つのインスタンス間でデータを送信する

トクフラン

プログラムのミューテックスとシングルインスタンスとの戦いはもうすぐ終わりです。

プログラムで別のインスタンスが実行されているかどうかを確認できるようになりました。

しかし、これが私が今理解しようとしていることです:

別のインスタンスを実行している場合、新しいインスタンスから古いインスタンスにデータを送信したいと思います。

これが私の音楽プレーヤーのシナリオです:

ユーザーがmp3ファイルをクリックすると、新しいインスタンスで開きます。

新しいインスタンスは、すでにインスタンスが開いていることを確認し、ファイルパスを最初のインスタンスに送信します。

こういうことはどうやってやるの?それについて読む場所はどこでも素晴らしいでしょう。

ネプトゥナオ

私はまったく同じ問題のATMで働いています。この記事では、使用可能なすべてのプロセス間通信メカニズムについて読むことができます。

プロジェクトでTCPソケットを使用することを選択しました。ここでは、サーバーアプリクライアントアプリの例を見つけることができます

おおよそのアルゴリズムは次のとおりです。

  1. チェックは同じ名前のプロセスが実行されています
  2. いいえの場合、サーバーソケットを作成し、BeginAcceptメソッドを使用してクライアント接続のリッスンを開始します
  3. 同じインスタンスがすでに実行されている場合は、クライアントソケットを作成し、データを送信してインスタンスを閉じます
  4. サーバー側がデータを取得すると、データを処理してリッスンを続けます
  5. ユーザーがプログラムを閉じるときは、リスニングを終了する必要があります

終了する前にソケットを破棄する必要があることに注意してください。また、バックグラウンドスレッドでリッスンし、同期メカニズム(EventWaitHandleなど)を使用して、クライアントからデータを受信するまで待ってから、次のスレッドに進む必要があります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

C:同時に実行される2つの異なるプログラム間で構造体のインスタンス化を共有する

分類Dev

javascriptで2つの異なる時間に同じUNIXタイムスタンプを取得する

分類Dev

kotlinの関数型プログラミングを使用して、同じコードで2つの異なるタイプのリストを処理する

分類Dev

Swift:2つのデバイス間でカスタムデータを送信する(同じネットワーク上ではない)

分類Dev

同じインターフェイスを使用して同じタイプの2つのシングルトンインスタンスを登録する

分類Dev

同じブラウザ内のページのインスタンス間で通知を送信する

分類Dev

matplotlibの1つのグラフに異なる日付で同じタイムスタンプで構成される時系列をプロットする方法

分類Dev

同じクラスの特定のインスタンス間でデータを共有する

分類Dev

プリズム内の2つのインターフェースに同じインスタンス(=シングルトン)を登録する方法IContainerRegistry

分類Dev

同じプログラムの複数のインスタンスからの複数のスレッド間で通信することは可能ですか?

分類Dev

コントローラCakePHPの同じ関数で2つのデータベースを使用する

分類Dev

タッチスクリーンでUbuntuDockをタップすると、プログラムの2つのインスタンスが開きます

分類Dev

プライムフェイスの複数のデータテーブルで同じリストをレンダリングする方法

分類Dev

同じインデックスを持つデータフレームの2つの行間の操作

分類Dev

同じテーブルの2つのインスタンス間で値を効率的に交換する方法

分類Dev

同じCプログラム内の2つのスレッド間でUDPメッセージを送信する(Linux)

分類Dev

同じコントローラーを使用して2つのdiv間でデータを共有する

分類Dev

同じ列の2つのタイムスタンプ間の時間差DAX

分類Dev

タスクバーで同じプログラムのウィンドウを注文する方法

分類Dev

同じタイプの2つのキーでグループを使用するJavaストリーム

分類Dev

同じインデックスパターンで2つの異なるログ行の2つのフィールドを組み合わせる

分類Dev

r-データフレームの同じ行の2つのポイントからラインストリングを作成します

分類Dev

1つのWeblogicドメインの同じクラスタに2つのSpringバッチアプリケーションをデプロイしますか?

分類Dev

2つのアセンブリプログラムが同じレジスタを使用するにはどうすればよいですか

分類Dev

同じmysqlデータベースで2つ以上のWordPressブログをインストールする方法は?

分類Dev

ダガー2:異なるライブラリモジュール上に同じスコープを持つ複数のコンポーネント間で同じインスタンスを提供します

分類Dev

2つのTCPストリーム間でデータをミラーリングする-VB.NET

分類Dev

同じビューコントローラ内の2つのコンテナ間でデータを渡す

分類Dev

同じ状態とコントローラー内の2つのビュー間でデータをバインドする

Related 関連記事

  1. 1

    C:同時に実行される2つの異なるプログラム間で構造体のインスタンス化を共有する

  2. 2

    javascriptで2つの異なる時間に同じUNIXタイムスタンプを取得する

  3. 3

    kotlinの関数型プログラミングを使用して、同じコードで2つの異なるタイプのリストを処理する

  4. 4

    Swift:2つのデバイス間でカスタムデータを送信する(同じネットワーク上ではない)

  5. 5

    同じインターフェイスを使用して同じタイプの2つのシングルトンインスタンスを登録する

  6. 6

    同じブラウザ内のページのインスタンス間で通知を送信する

  7. 7

    matplotlibの1つのグラフに異なる日付で同じタイムスタンプで構成される時系列をプロットする方法

  8. 8

    同じクラスの特定のインスタンス間でデータを共有する

  9. 9

    プリズム内の2つのインターフェースに同じインスタンス(=シングルトン)を登録する方法IContainerRegistry

  10. 10

    同じプログラムの複数のインスタンスからの複数のスレッド間で通信することは可能ですか?

  11. 11

    コントローラCakePHPの同じ関数で2つのデータベースを使用する

  12. 12

    タッチスクリーンでUbuntuDockをタップすると、プログラムの2つのインスタンスが開きます

  13. 13

    プライムフェイスの複数のデータテーブルで同じリストをレンダリングする方法

  14. 14

    同じインデックスを持つデータフレームの2つの行間の操作

  15. 15

    同じテーブルの2つのインスタンス間で値を効率的に交換する方法

  16. 16

    同じCプログラム内の2つのスレッド間でUDPメッセージを送信する(Linux)

  17. 17

    同じコントローラーを使用して2つのdiv間でデータを共有する

  18. 18

    同じ列の2つのタイムスタンプ間の時間差DAX

  19. 19

    タスクバーで同じプログラムのウィンドウを注文する方法

  20. 20

    同じタイプの2つのキーでグループを使用するJavaストリーム

  21. 21

    同じインデックスパターンで2つの異なるログ行の2つのフィールドを組み合わせる

  22. 22

    r-データフレームの同じ行の2つのポイントからラインストリングを作成します

  23. 23

    1つのWeblogicドメインの同じクラスタに2つのSpringバッチアプリケーションをデプロイしますか?

  24. 24

    2つのアセンブリプログラムが同じレジスタを使用するにはどうすればよいですか

  25. 25

    同じmysqlデータベースで2つ以上のWordPressブログをインストールする方法は?

  26. 26

    ダガー2:異なるライブラリモジュール上に同じスコープを持つ複数のコンポーネント間で同じインスタンスを提供します

  27. 27

    2つのTCPストリーム間でデータをミラーリングする-VB.NET

  28. 28

    同じビューコントローラ内の2つのコンテナ間でデータを渡す

  29. 29

    同じ状態とコントローラー内の2つのビュー間でデータをバインドする

ホットタグ

アーカイブ