.NET の世界では、マーシャリングとは、境界を越えて、またはワイヤを介して転送するためのオブジェクト/データの準備を意味するだけですか、それとも、境界を越えて、またはワイヤを介して転送するための準備と転送を意味しますか?
そして、呼び出しをマーシャリングするとはどういう意味ですか。コンテキスト境界を越えた「転送」の呼び出しのパッケージ化だけを意味するのでしょうか、それとも呼び出しのパッケージ化と送信 (つまり、呼び出し) でしょうか?
ベタベタでごめんなさい…
クラリー
.NET の世界では、マーシャリングとは、境界を越えて、またはワイヤを介して転送するためのオブジェクト/データの準備を意味するだけですか、それとも、境界を越えて、またはワイヤを介して転送するための準備と転送を意味しますか?
そして、呼び出しをマーシャリングするとはどういう意味ですか。コンテキスト境界を越えた「転送」の呼び出しのパッケージ化だけを意味するのでしょうか、それとも呼び出しのパッケージ化と送信 (つまり、呼び出し) でしょうか?
ベタベタでごめんなさい…
クラリー
私の考えでは、マーシャリングとは、オブジェクトまたはデータを取得し、非ネイティブなコンテキストで使用できるように準備し、それを外部のコンテキストに提示する行為を指します。
私は、データやオブジェクトがなじみのない環境に「案内される」という観点から考えています。これには、異なるエンコーディング、ラッパーなどが含まれる場合があり、オブジェクトがどのように転送されるかは、マーシャリング プロセスの重要な部分です。
データまたはオブジェクトが実際に新しいコンテキストに提示されるまで、マーシャリングされたとは見なしません。その時点で、変換、暗号化、ラップなどが行われています。
たとえば、JSON は、あるプロセスから別のプロセスにオブジェクトまたはデータを転送するためによく使用されます。JSON に変換すると、あるデータ構造から別のデータ構造への変換と見なされます。ワイヤを介して転送されると、マーシャリングされます。
したがって、コンテキストの変更もマーシャリングもありません。
それは私の2セントです。
私が理解しているように、それは転送ではなくデータの準備です。それでも、転送も含めてこの用語を使用することは珍しくありません (私もこれを行ったことに罪を犯しています)。
両方のシナリオを表すことができると思います。
「元帥」にはいくつかの意味がありますが、肩書き以外では、. . .
マーシャル - 動員: 行動または使用の準備を整える。「マーシャルリソース」
したがって、「パッケージして送信する」ではなく、「パッケージする」という意味にすべきです。
マーシャリングは純粋に境界を越えています
通常、2 つの appDomain 間でオブジェクトを渡すために使用されます。有線部分はオプションですが、オブジェクトを有線で送信するプロセスは、最初にオブジェクトのシリアル化であり、送信は通常、他のプロトコル (tcp/ip) によって行われます。