問題タブ [deferred-execution]
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# - IQueryable 実装時の遅延実行のきめ細かな制御
私は IQueryable を実装していますが、これまでのところ 'Where' 呼び出し用の式ビジターのみを実装しており、他のすべては現在サポートされていません。式はネイティブ T-SQL に変換されます。もちろん、時間の経過とともに追加のメソッド呼び出しのサポートを追加する予定です。
私の「Where」サポートは遅延実行を使用しているため、私の質問は、フードの下で遅延実行が使用されていないが透過的である「Select」などの他の方法のサポートを追加することが可能かどうか、および/または良い方法であるかどうかです。 IQueryable を使用しているすべての人に。したがって、延期されたソリューションが利用可能になるまで、機能する実装があります。
例えば:
私の質問は 2 つあると思いますが、
1) それは可能ですか / 実装するのはどれくらい簡単ですか?
2)それは良い考えですか?
ありがとう。
c# - LINQ クエリの評価を強制するのはいつですか?
次のようなメソッドを使用してLINQクエリの評価を強制することについて受け入れられている慣行は何ToArray()
ですか?クエリの最適なチェーンを構成するための一般的なヒューリスティックはありますか? 私はよくすべてを 1 回のパスで実行しようとします。そのような場合AsParallel()
、計算の高速化に非常に優れていることに気付いたからです。クエリが副作用なしで計算を実行するが、正しいデータを取得するためにいくつかのパスが必要な場合ToArray()
、正しい方法で計算を強制するか、クエリを遅延形式のままにしておく方がよいでしょうか?
linq - LINQ:パフォーマンスを向上させるためにIEnumerable.Count()またはIList.Countを使用する
次のコードに基づく:
リストをフィルタリングする場合、私の理解では、IEnumerable.Count()を呼び出すと、クエリが強制的に実行されます。この実行の結果はグループ化された変数に格納され、foreachループで使用されますか、それともforeachループはクエリを強制的に再実行しますか?代わりにこれを行う方が良いでしょうか?
TIA。
ant - BeanShell スクリプトから Ant タスクを調整して実行するには?
Ant ビルド ファイルに大きな jar タスクがあります。しかし、すぐに実行したくありません。いくつかのファイルセットをタスクに追加して、それを実行したいだけです。jar タスクをスクリプトで完全に定義したくありません。どうやってするか?
スクリプトから次のアプローチを試しました:
「java.lang.ClassCastException: org.apache.tools.ant.UnknownElement を org.apache.tools.ant.taskdefs.Jar にキャストできません」
jquery - 遅延オブジェクトの配列の処理
使用して以来$.Deferred
、このシナリオに数回遭遇しました。それぞれが何らかの方法で遅延オブジェクトを生成する値のリストを持っており、すべての遅延オブジェクトが解決されたらコールバックを実行したいと考えています。
より具体的な例は次のようになります。
私の例のコードよりも洗練されたソリューションはありますか?
javascript - JSライブラリといくつかのドキュメント対応関数のロードを延期する
この投稿に従って、JSライブラリと1つのドキュメントレディ関数の読み込みを延期することができました。jQueryの読み込みを延期することは可能ですか?
ただし、(すべてのページではなく)異なるモジュールによってページに配置される複数のドキュメント対応関数があります。私がこれまでに持っているコード:
これは実際には機能すると思いますが、ライブラリが読み込まれる前に、他のドキュメント対応関数を実行しようとしています。他の関数を1つの関数にマージできないため、他の関数に使用できる簡単なテストはありますか?
乾杯
c# - ストアド プロシージャと組み合わせた Entity Framework クエリのサーバー側実行
ObjectQuery から StoredProcedure を呼び出すことは可能ですか? 基本的に、クエリを動的に構築してサーバー側で実行したいと考えています。各クエリは、"and" または "or" を使用してさまざまな条件を組み合わせることができる検索の一部であると考えることができます。このように作成された ObjectQueries で正常に動作しています。
では、ストアド プロシージャ コールを使用してこれを機能させるにはどうすればよいでしょうか。問題は、ExecuteFunction の呼び出しが ObjectResult を返すことです。
javascript - スクリプトを非同期にロードし、フォールバックを行う
ここでの目的は、ブラウザーが defer または async をサポートしている場合に、スクリプトを非同期で読み込むことです。
ブラウザがどちらもサポートしていない場合、非同期ロードは気にしません (悪くはありません)。
jQueryがロードされているなど、スクリプトの前提条件が満たされている場合にのみ、スクリプトが実行されるようにしたいと考えています。他のスクリプトがロードされている間に自分のスクリプトをロードしたい (ブラウザーが defer または async をサポートしている場合のみ)。
ブラウザの API のみを使用してこれを行いたい。どんなに小さくても、ブラウザーが信頼できる (またはそうでない) スクリプトをロードすることは望ましくありません。
これは、IE8+、Gecko v.1.9.1+ (例: firefox 3.5.* または firefox 9.0+)、webkit (例: chrome)、presto (例: Opera) で動作する必要があります。バージョンについて言及しなかったものについては、最新の安定版を意味します。
可能であれば、簡単ではないスクリプトは必要ありません。この仕事をするのに簡単なものが必要です。つまり
、可能であれば、他のページで見たようないくつかの回避策を実行するためのいくつかのメソッドを備えた AJAX 呼び出しや派手なオブジェクトなどは必要ありません。これらは、非同期または遅延をサポートしていないブラウザでスクリプトの非同期ロードを強制するためのものです
繰り返しますが、スクリプトを非同期にするために凝ったものは必要ありません。ブラウザーが defer または async をサポートしていない場合、私は気にしません。前提条件が満たされた後に各部分が実行され、ブラウザーがサポートしている場合はasync または defer を使用するように、スクリプトが読み込まれることに注意してください。
sql - LINQ 関数と DataContext の破棄、遅延実行
ですから、ここでアドバイスと洞察が必要です。ご意見ありがとうございます。
LINQ エンティティから単一のレコードを返す静的関数を開発しました。そのようです:
DataContext が既に破棄されているため、これにより例外がスローされ、遅延実行で問題が発生します。これは機能します:
私が心配しています。DataContext はどのくらいの速さで破棄されますか? 明らかに、レコードをすぐに取得しても問題は発生しません。ただし、関連付けを通じてレコードを取得する必要があるとします。
この時点で DataContext がなくなるリスクはありますか? 何かアドバイス?
c# - 延期された実行値は変更されません
私が持っていると言いますIQueryable<Car> cars
。
私はそれを次のように繰り返します:
c.Doors
変更された値ではなく、foreachの後に元の値が含まれるのはなぜですか?
前もって感謝します