さまざまなオブジェクトに共通のコードにアクセスするVB.NETアプリケーションがあります。私は現在「共有クラス」を使用しています(クラスは共有できませんが、すべての変数とメソッドは「共有」とマークされています)。VB.NETのさまざまなオブジェクト(共有クラス、モジュールなど)の可視度
私の懸念は、このオブジェクトの可視性です。ユーザーが同じデスクトップ上でアプリケーションの2つのインスタンスを実行した場合、共有クラスの同じ「インスタンス」を使用しますか?つまり、アプリケーションの2つのコピーは同じカウンタをインクリメントして同じ変数を使用しますか?
さらに、同じマシン上の2つのユーザースペースは、各ユーザーがコピーを実行すると、その2つのコピーが干渉しますか?
おそらく、私は "共有"概念を弱体化しており、これを行うもっと良い方法があります(クラスの代わりにモジュールを使ってコードを共有する人もいます)。オブジェクト(変数とメソッドの両方)をアプリケーション全体で共有するが、他のアプリケーションインスタンスとは別に保つ方が良い方法はありますか?
更新日: 私が書いているアプリケーションでは、自分の「優先」方法に関する質問に答えて、ユーザーが実行している別のインスタンス間でもデータを非公開にする必要があります。その場合、複数のインスタンス間でデータを共有したくないので、共有クラスまたはモジュールを使用することによる副作用が心配です。ご質問ありがとうございます。
あなたは、実際にあなたの好みのシナリオが望ましいと述べることなく、 "これを行うもっと良い方法"があるかどうかを知ることができます。ユーザーの複数のインスタンス間で変数を共有できますが、2人の異なるユーザー間で変数を共有できますか? – AnthonyWJones