問題タブ [func]
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.
c# - 単一の拡張メソッドで呼び出しを適切に開始および終了する
これが、非同期プロセスを開始する拡張メソッドを作成する正しい方法であるかどうか、他のユーザーと再確認したいと思います。呼び出されたときに、そのプロセスを本質的に待機して結果を取得する関数を返します。
基本的には、次のように使用したい (疑似コード):
この状況で WaitHandles を待つことを心配する必要があるかどうかはわかりませんでした。また、コールバックを渡す必要があるかどうかもわかりません。また、これは閉鎖を構成すると思いますか?
編集
これに尽きる、
これはうまくいくようです。コールバックは、EndInvoke が呼び出されたかどうかを確認し、呼び出されていない場合はそれを呼び出します。それ以外の場合は、返されたデリゲート内で EndInvoke が呼び出されます。
2回目の編集
これが私の最新の試みです-まだエラーをスローしておらず、うまく処理しているようです。デリゲートが function.EndInvoke() の結果を返した場所で機能させることができませんでしたが、匿名コールバックで EndInvoke が呼び出されるまでデリゲートは待機してから R を返します。また、各ケースで R が実際に割り当てられていることを確認するために、さらにチェックを使用することもできます。
c# - System.ActionEventHandlerとして
デリゲートを使用すること、System.Action
または従来のパターンSystem.Func
の代わりにEventDelegatesとして使用することに反対するものEventHandler
。したがって、問題が発生しますか?
使用法:
c# - C#: 継承された型のコンストラクターを使用する関数
私たちが知っているように、コンストラクターは次のFunc<T>
ように指定できます。
しかし、 MyObject から継承されていることがわかっているが、その正確な型がわからないオブジェクトのコンストラクターを作成する方法はありますか?
Activator
usingまたは何かを返すという答えObject
はオプションではありません。
編集:コンパイル時に派生型がどの型かわかりません。私はSystem.Type
.
c# - 機能現実世界の使用を委譲する
私は最近、デリゲートをいじり、ラムダを含むFunc<T, TResult>
さまざまなインスタンスを返すメソッドを作成していますFunc<T, TResult>
が、私が思いつくのに苦労したのは、戻りたい(またはそのようなインスタンスを作成したい)理由についての良い現実世界のアイデアです.
MSDNには、次のことを行う例があります...
見た目はきれいで興味深いコンセプトですが、そのようなコードが提供する利点がわかりません。
では、ここで誰かが使用しなければならなかった実際の例Func<T, TResult>
と、一般的にこのデリゲートを使用する理由を教えてください。
c# - ジェネリック引数を避ける
プロパティ(Id)に指定された属性(TV)が含まれていることをアサートする次の拡張メソッドがあります。
メソッドは次のように呼び出すことができます。
うまくコンパイルされます。メソッド署名から T と TT を削除できるかどうか疑問に思っていました。T は T で ShouldHave が呼び出されるため、明示的に指定する必要がないからです。TT は、式 (x.Id) で参照されるプロパティの型です。
c# - コンパクト フレームワーク関数問題
バックグラウンド ワーカー プロセスで何らかの作業を行おうとしていますが、作業が完了している間にモーダル ダイアログを表示したいと考えています。単純な Action デリゲートのコードはうまく機能していますが、Func デリゲートを渡して戻り値の型を取得できるようにしたいと考えています。私がこれまでに持っているのは、メソッドを持つフォームです
次に働きたいのは次のようなものです
_workWithReturn の型を宣言するときに転倒し続けるため、これまでのところ運がありませんでした
誰か考えがありますか?
これが完全なコードです。
c# - C# WCF クローズ チャネルと関数 Func の使用
これがポイントです。私はWCFサービスを持っています。それは現在機能しています。それで、私はクライアント側で働き始めます。そして、アプリケーションの実行中に、タイムアウトという例外が発生しました。接続を維持する方法については多くの例がありますが、チャネルを作成して使用し、破棄するのが最善の方法であることもわかりました。そして正直なところ、私はそれが好きでした。したがって、チャンネルを閉鎖する最善の方法について読んでいると、それらを必要とするすべての人に役立つ可能性のある2つのリンクがあります。
最初のリンクでは、これは例です:
そのため、チャネルが null でない場合は、閉じて破棄し、null を割り当てます。しかし、少し質問があります。この例では、チャネルに .Close() メソッドがありますが、私の場合、インテリセンスは Close() メソッドを表示していません。ファクトリ オブジェクトにのみ存在します。だから書かなければならないと思っています。しかし、それを実装するコントラクトまたはクラスを持つインターフェイスでは??. そして、このメソッドは何をすべきですか??.
さて、次のリンクは、これまでに試したことのないものです。Func<T>
. そして、ゴールを読んだ後、それは非常に興味深いものです。ラムダを使用してチャネルを作成し、使用し、閉じて破棄する関数を作成します。Using()
この例では、その関数をステートメントのように実装しています。それは本当に良いことであり、優れた改善です。しかし、私は少し助けが必要です.正直なところ、私はその機能を理解することができないので、専門家からの少しの説明は非常に役に立ちます. これは機能です:
そして、これはどのように使用されているかです:
ええ、私は本当に、本当に良いと思います。私が持っているプロジェクトでそれを使用するためにそれを理解したいと思います.
そして、いつものように、これが多くの人に役立つことを願っています.
c - ctype.h のいくつかの関数の最適化された実装
私が使用しているCアプリケーションの1つで、 ctype.h の関数の下に:
isalpha()、isspace()、ispunct()、tolower()。
プロファイリング後、これらの関数の呼び出しにいくつかのボトルネックがあることがわかりました (基本的に、私のアプリは入力テキスト ファイルからの文字/文字列処理であるため、これらの関数は重要なループ内で徹底的に呼び出されます)。役立つ場合は独自の実装。
それらを実装するためのそのようなロジックはどこにありますか?
map - 関数のマップに移動
関数が定義された Go プログラムがあります。また、各機能のキーを持つ必要があるマップもあります。どうやってやるの?
これを試しましたが、うまくいきません。
c# - C# - out 変数を必要とする関数への参照を渡すにはどうすればよいですか?
エラー: 「引数 2 は 'out' キーワードと共に渡されるべきではありません。」
エラー: 「バリアンス修飾子が無効です。バリアントとして指定できるのは、インターフェイスとデリゲートの型パラメーターのみです。」
この関数で out パラメータを取得するにはどうすればよいですか?