問題タブ [shared-data]
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.
java - Runnable と Callable およびローカル データを使用した Java 同時実行共有データ
最初のケース: 何らかの結果を返す多くのタスクがあるとしましょう。ここでは、それを「結果」と呼びましょう。これらはすべて、配列リストに格納する必要があります。次の 2 つのオプションがあります。
1) main メソッドで 1 つの arraylist を作成し、共有リストにアクセスできる runnables と同期された add メソッドを使用します。
2) main メソッドで 1 つの arraylist を作成し、callable を使用してタスクを実行し、結果を返し、main メソッドが Result をそのリストに追加できるようにします。
runnable には同期アクセスが必要ですが、callable には必要ないため、2 つの間にパフォーマンスの違いはありますか?
次に、2 番目のケース: 各タスクが「小さな」配列リストを生成するとします。たとえば、タスクごとに 10 項目未満とします。これも 2 つのオプションを提供します。
1) 生成されるたびに結果項目を追加する共有リストにアクセスできる、メインおよび実行可能ファイル内の 1 つの配列リスト。
2) main と callables> に 1 つの arrayList があり、タスクが完了するまで結果を格納する独自のローカル arraylist を持ち、main で addAll を使用して見つかった結果を追加します。
前と同じ質問ですが、パフォーマンスの違いは何ですか?
明確にするために、速度(いくつかの同期の問題など)とメモリの両方の観点からのパフォーマンス(ローカルの小さな配列リストのために呼び出し可能オブジェクトはより多くのメモリを使用しますか、それともこれは小さいから無視できますか)?
sql-server - SSRS レポートを SQL Server Reporting Services から実行すると、[プレビュー] タブを使用して実行した場合とは異なるデータが生成されるのはなぜですか?
[プレビュー] タブから、つまり VS 2010 で F5 を使用して実行したときに、必要なデータを実行するレポートを取得しました。しかし、レポート (.rdl ファイル) を SQL Server Reporting Services にアップロードし、更新されたそこからレポートを作成しても、まだ古い (制限付きの) データが表示されます。
手順が不足していますか? プロジェクトから .rdl ファイルをアップロードする以外に何かする必要がありますか? DataSource が間違っていることがわかりましたが、正しいものを指定すると、問題なく実行されました (欠落しているデータを除く)。
偽の追加をラベルに追加することで、更新されたレポートが実際に SQL Server Reporting Services によって使用されていることを確認しました。確かに、レポートを実行すると、更新されたレポートがそこに到達していることがわかります。
また、設計時レポートと実行時レポート (同じファイルですが、別の場所にコピーされたもの) が同じデータ ソースを使用していることも確認しました。プロジェクトの SharedDataSource 参照です。[表示] > [レポート データ] > [データ ソース] を選択すると、 SQL Server Reporting Services で使用されているものと同じで、レポート名の黄色の右下矢印を選択してデータ ソースを設定し、[管理] > [データ ソース] > [共有データ ソース] > [参照] > [ホーム] > [データ] Sources > をクリックし、プロジェクトに表示されているものと同じ名前の共有データ ソースを選択しました。最後に、SQL Server Reporting Services で [OK] > [適用] を選択しましたが、データのサブセットしか生成されません。
なぜでしょうか?すべてのデータを取得するにはどうすればよいですか?
アップデート
何が起こるかを明確にするために、yelxe のコメントに答えて:
SSRS で以前のバージョンのレポートを削除し、「新しい」レポート (.rdl ファイル - 削除したレポートの新しいバージョン) をアップロードし、レポート リンクをクリックして実行しようとすると、「レポート サーバーは、レポートまたは共有データセットを処理できません。レポート サーバーまたは SharePoint サイトの共有データ ソース 'CPSData' が無効です。サーバーまたはサイトを参照して、共有データ ソースを選択してください。(rsInvalidDataSourceReference)"
そこで、レポートの右側にある黄色の下向き矢印をクリックして、[管理] を選択します。
そこから、[データ ソース] > [共有データ ソース] > [参照] > [ホーム/データ ソース/CPSData] (「CPSData」は、プロジェクトで選択した共有データ ソースと同じです) > [OK] > [適用] を選択し、レポートを実行します。
これは私がそれを行う場所です:
実行されますが、レポートに返されるデータは、IDE (VS 2010) から実行したときに得られるデータのサブセットです。
更新 2
レポートが SSRS から実行されたときにそこにあるデータに関しては、それは同一です - IOW、データのスーパーセットとサブセットの両方に共通する行は同一です。サブセットから多くの行が欠落しているだけです。そして、スーパーセットに存在するデータについて「奇妙な」ものは何もないように見えます.0でも負でもなく、特別なものでも印象的なものでもありません。
更新 3
エリックのコメントにさらに詳細に返信するには、レポートの [サブスクリプション]、[キャッシュ更新オプション]、および [レポート履歴] ページに「このビューに表示するアイテムはありません。このページの詳細については、[ヘルプ] をクリックしてください。」と表示されます。
レポートの [処理オプション] ページが表示されます
...そして、レポートの [スナップショット オプション] ページが表示されます
更新 4
データ ソースの名前がプライマリ データセットの名前と同じであることに気付きました (どちらも「CPSData」でした)。データセット名は単なるラベルです (「duckbilledplatypus」などの名前を付けることができます) が、データセットのこの紛らわしい/誤解を招く名前が問題だったのではないかと思いました。そこで、データセットの名前をより適切なものに変更しました (ストアド プロシージャの名前が "sp_ViewPriceMatrix_Variance_RockBottom" であるため、名前を "VPM_V_RockBottom" に変更しました)。
しかし、これは違いはありませんでした。SSRS で新しいバージョンのレポート (.rdl ファイル) を置き換え、レポートを再実行しましたが、欠落しているデータは表示されません (表示されません)。
同じパラメーター (日付範囲とユニット名) を使用して、プロジェクトの [プレビュー] タブから実行すると、次のように表示されます。
...そして、SSRS で実行した場合は次のようになります。
そのため、"Hass"* アボカドは、VS 2010 から実行すると 18 個のメンバーを表示し (そうあるべきです)、SSRS から実行すると 3 個しか表示しません。どちらの場合/場所でも、"Asparagus Standard 11/1#" は 18 のメンバーを示しています。
なぜ違いが生じるのでしょうか? また、この異常をどのように修正できますか?
- (原文のまま - 「Hass」(「憎しみ」を表すドイツ語) ではなく、「Haas」にする必要があります)
ibm-cloud - IBM Bluemix CF アプリ用にマウントされたボリューム
Bluemix 上の IBM Containers は、ボリュームのマウントとコンテナー間での使用をサポートしています。Bluemix CF アプリに関して同様の共有ボリュームを作成する方法はありますか?
c++ - C++ 設計: 一連の変数を共有する 2 つのクラスを設定するにはどうすればよいですか?
これはばかげた質問かもしれませんが、一連の変数を共有する 2 つのクラスをプログラムする最良の方法は何ですか?
- クラス A とクラス B はどちらも int x と int y にアクセスする必要があります。
- クラス A が x または y を変更した場合、その変更はクラス B に反映されます。
私の考え:クラスAとBはクラスC(変数x、yを含む)を継承できます-しかし、これは両方のA、Bに対してcのインスタンスを作成します。- x と y のインスタンスが 1 つだけ必要です
たぶん、フレンドクラスまたは静的変数が必要ですか?
angular - 複数のコンテキストに固有の作成/削除 API を備えた Angular の汎用コンポーネント
コメント用の一般的なコンポーネントがあります。このコンポーネントには複雑なグラフィックスの影響があり、同じデータ モデルを持つ 2 つの異なるコンテキストで再利用する必要があります。例で説明したい。A コンテキストと B コンテキストのリストに新しいコメントを追加するための 2 つの異なる API があります。だから私は:
コメントのリストと、コメントを追加 (または削除) するためのボタンを備えた AComponent。
コメントのリストと、コメントを追加 (または削除) するためのボタンを含む BComponent。
どちらも同じモデル (IComment) とグラフィックスの詳細を使用しますが、作成/削除用に異なる API を使用します。
これまでは、イベント エミッターを使用してこのユース ケースを処理し、A および B コンポーネントに属する親に API 呼び出しを委任していました。
しかし、API がサーバーによって検証エラーを返した場合、エラー グラフィックの詳細を表示するために、コメントのコンポーネントでそれを処理する必要があります。どうすればそれができますか?このユースケースのより良い方法は?