問題タブ [probing]

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 に答える
11029 参照

c# - アセンブリ ファイルはどこにありますか?

私は単純なアプリケーションを作成しました.C#または任意の.netプログラムがアセンブリコードを含むアセンブリファイルに変換されることを本で読みましたが、そのアセンブリファイルの場所を知りたい.

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

c# - アセンブリの複数の異なるバージョンを参照するアプリケーションを実行しています

EF4とEF5のパフォーマンスを比較するテストプロジェクトを作成しています。正しいEFバージョンを参照するEFバージョンごとに個別のdllを作成できるようにしたいのですが、単一の実行可能ファイルからテストを起動できるようにしたいのですが、現時点では、これはEFdllのコピーがexeディレクトリに2つあることを意味します。これは良くありません。

プロービングと呼ばれるものを使用して、どういうわけかdllの複数のバージョンを持つことができることを理解していますが、それを実装する方法がよくわかりません。誰かがこれのコード例を持っていますか?またはもっと良い方法はありますか

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

c# - C#app.configなしでプロービングprivatePathを設定しますか?

私はC#アプリケーションを持っており、そのファイルを整理するために、「データ」というフォルダーにいくつかのDLLがあります。EXEに、現在のディレクトリをチェックするのと同じように、DLLのこのフォルダをチェックしてもらいたい。この情報を使用してApp.Configを作成した場合:

問題なく動作します。App.Configは必要ありません。app.configを使用せずにプロービングパスを設定する方法はありますか?

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

c# - 同じフォルダーにあるマネージド アセンブリを読み込めません

本番環境を再作成するために、次のフォルダー構造を作成しました。

c:\TEST\tested.dll c:\TEST\tested\tools.dll

testing.dll は、次の App.config ファイルを使用してコンパイルされます。

私の知る限り、アプリケーションはサブフォルダー内のツール ファイルを探す必要があります。ステーションを起動しようとすると、まだファイルが見つからないというエラーが表示されます。

ここでいくつかのコンテキストを提供するために、tested.dll ソースの例を示します。

および tools.dll ソースの例:

クラッシュするコードは、次のように機能する私のテストコードです。

私は何が欠けていますか?App.config は正しいですか?


編集:

以下の答えは正しいです。パスは、正しい dll を選択できるようになって初めてわかります。new ResolveEventHandlerしたがって、他のチームはロードする前に を追加する必要があります。これを簡略化したものを次に示します。

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

hashtable - ハッシュテーブルから値を削除するコストは?

ここで、挿入プロセス中に線形プローブを使用したときに、ハッシュ テーブルから値を削除するコストを尋ねられたという質問があります。

インターネットでさまざまなことを読んでわかったことは、負荷率をどうにかしなければならないということです。よくわかりませんが、負荷率と必要なプローブ本数の関係を読んだところ、プローブ本数=1/(1-LF)でした。

したがって、コストはプローブ配列に依存する必要があると思います。しかし、別の考えがすべてを台無しにします。

エレメントが p プローブに挿入されていて、このエレメントを削除しようとしている場合はどうでしょうか。しかし、この前に、同じハッシュ コードを持ついくつかの要素を既に削除しており、p 未満のプローブへの挿入の一部でした。

この場合、ハッシュ テーブルに空のスロットが表示される段階に到達しますが、削除しようとしている要素が既に削除されているのか、プローブの結果として別の場所にあるのかはわかりません。

また、要素を削除したら、このスロットを特別なインジケーターでマークして、それが利用可能であることを通知する必要があることもわかりましたが、これでは、削除しようとしている要素が不明であるという問題は解決しません。

そのような場合のコストを見つける方法を誰か提案してもらえますか? 非線形プロービングの場合、アプローチは変化しますか?

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

hash - ハッシュのためにすべての R 番目の場所を調べる

講義で気になったこと:

関数 x mod 10 および R = 2 のすべての R 番目の位置をプローブしたいとします。ここで、4、14、114、1114、および 11114 をハッシュします。

  • 4 はスロット 4 に入ります。
  • 14 は最初にスロット 4 に入ろうとしますが、スロットがいっぱいであることを確認して、スロット 6 に移動し、次に (+R) に移動します。
  • 114 は、スロット 4 がいっぱいであることを検出し、スロット 6 (+R) に移動しますが、それがいっぱいであるため、スロット 0 (+2R) に移動します。

しかし、1114 の場合、それは永遠に続くようです。どこに行っても、常にスロットがいっぱいになります。この場合はどうなりますか?

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

asp.net - カスタムbinフォルダーにデプロイされたアセンブリを使用するにはどうすればよいですか?

ここにいくつかのカスタムdllがあります:

MainAppの下にあるweb.configファイルに以下のようなプローブを追加しました。

dllがCustom_Dllsフォルダーの下にある.aspxWebページを実行すると、「タイプを読み込めませんでした...」というエラーメッセージが表示されます。これは、dllが見つからないことを意味します。

フル物理パス「file:/// C:\ MainApp \ bin \ Custom_Dlls」も使用してみましたが、機能しません。

何か助けはありますか?他に何かする必要がありますか?

ありがとう、

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

algorithm - ハッシュテーブルの2次プロービングの制限

私は、ハッシュテーブルでの線形プロービング、2次プロービング、および個別のチェーンに必要な平均アクセスと最大アクセスを比較するプログラムを実行していました。

エレメント挿入部分は3ケース行っております。ハッシュテーブルから要素を検索している間、検索を終了するための制限が必要です。個別のチェーンの場合、次のポインターがnullになったときに停止できます。線形プロービングの場合、テーブル全体(つまりテーブルのサイズ)をプロービングしたときに停止できます。二次プロービングの制限として何を使用する必要がありますか?テーブルサイズはありますか?

私の二次プロービング機能はこんな感じです

ここで、iは0から無限大まで変化します。私を助けてください..

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

c# - Windows サービスを .NET にインストールする際のロード例外の調査

.NET で記述された Windows サービスがあり、この Windows サービスに dll をロードするためにプローブ機能を使用しました。しかし、コマンド プロンプトを開いて installutil.exe を使用して Windows サービスをインストールしようとすると、次のようなエラーが発生しました。 . のインストールを中止しています",

一方、Windows サービスと同じフォルダにある dll を移動し、インストール手順を繰り返すと、Windows サービスは正常にインストールされます。

この問題について何かアイデアや提案はありますか?.NET の Windows サービス インストールにプローブの問題はありますか?

0 投票する
0 に答える
496 参照

unit-testing - nunit-agent は、テスト構成からのプローブ privatePath の読み込みに失敗しているようです

以前は、Visual Studio 2010 しかなかったとき、単体テストは問題なく実行されていました。

基本的に、テストは UnitTests.dll と UnitTests.dll.config の 2 つのファイルで構成されています。UniTests.dll.config には、カスタム プローブの privatePath がありました (たとえば、Public;Extensions;Lib)。

実行するために、私は次のワークフローに従っていました。2. NUnit GUI を開きます。3. テストでは、テスト対象のアプリケーションから dll をロードする必要があるため、ShadowCopy を無効にしてテストを実行します。

これはうまくいきました!

Visual Studio 2012 をインストールした後、テストが実行されなくなりました。その後、回避策を見つけましたが、それは私のソリューションでは使用したくないものです。

テストを実行するには、次のワークフローに従う必要があります。

  1. 両方のファイル (つまり、UnitTests.dll と .config) を、テスト対象のアプリケーションがあるフォルダーにコピーします。
  2. すべての NUnit インストール ファイル (つまり、nunit-agent、nunit-console など) を、テスト対象のアプリケーションが配置されているフォルダーにコピーします。
  3. UnitTests.dll.config からの同じパスを含めるために、nunit-agent.dll.config からのプローブ privatePath を変更します。
  4. アプリケーションの test フォルダーの下にある NUnit gui を開きます。
  5. ShadowCopy を無効にしてテストを実行します。

単体テストを実行するには、手順 2 と 3 を含める必要があることに注意してください。どういうわけか、nunit-agent.dll が、テスト アセンブリの構成ファイルからプローブ用の privatePath を読み込んでいないと思います。

なぜこれが起こっているのか誰にも分かりますか?nunit-agent.dll.config を変更して nunit インストール ファイルをコピーする必要がない回避策はありますか?

前もって感謝します。