問題タブ [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.
ios - Objective-C では、View Controller 内の関数間でデータをどのように共有しますか?
簡単にするために、View Controller 内の関数間でデータを共有するにはどうすればよいでしょうか? 理想的には、NSMutableDictionary を使用したいのですが、私のアプローチはうまくいかないようです (以下):
ViewController.m で:
エラーで終了: '不明な受信者 'movieItem'. 入力していただきありがとうございます。
java - アプリケーションの複数のインスタンスにまたがる StringBuffer クラスでログを維持する
ここ数日、この問題に苦しんでいます。
要件 このアプリケーションでは、nodejs で開発された UI を介してファイルをアップロードし、ファイル レコードは amazon シンプル ワークフロー (SWF) を介して処理されます。amazon SWF への呼び出しは、ファイルの処理時に nodejs アプリが呼び出す Spring アプリを介して行われます。要件は、処理中のすべてのファイルについて、処理中にレコードに何が起こったかを詳述するログ ファイルをアプリケーションが作成する必要があることです。
どのように実装しましたか? SWF をトリガーする Spring アプリケーションで、静的な StringBuffer 変数を維持する FileLogger クラスを作成しました。この fileLogger クラスはワークフロー スコープに設定されます。つまり、クラスはワークフローの実行ごとに作成され、最後に破棄されます。ファイルが処理されると、FileLogger クラスの StringBuffer にログを追加し続け、処理の最後にファイルに書き込み、保存します。
問題 の説明 アプリケーションのインスタンスが 1 つしか実行されていない限り、このソリューションは正常に機能しているように見えました。アプリケーションを複数の amazon ec-2 インスタンスにデプロイするとすぐに、不完全なログがファイルに保存されているように見えます。さらに調べてみると、アプリケーションのすべてのインスタンスがログを保持するための独自の stringBuffer を持っており、アプリケーションに書き込みを行っているときに stringbuffers のコンテンツの 1 つしか読み取れないため、ログが不完全であることがわかりました。言うまでもなく、ログのパターンはランダムです。アプリケーションの N 個のインスタンスをデプロイすると、StringBuffer の N 個のインスタンスが存在することがわかりました。
ここに FileLogger クラスがあります
質問 アプリケーションの複数のインスタンス間で StringBuffer (logAppender) のインスタンスが 1 つだけであることを確認するにはどうすればよいですか?ログを追加し続け、最後に読み取り、内容をファイルに書き込んでから保存できますか?
c# - 静的クラスを使用してグローバル データを共有することが適切でないのはなぜですか?
静的クラス プロパティを使用してデータを共有することは、良い方法ではないと聞いたことがあります。このアプローチを使用している人を見たことはありませんが、そのようなアプローチの欠点はわかりません! より明確にするために、特定のフローでデータとパラメーターを共有する多くの UserControls で構成される WPF アプリケーションを考えてみましょう。静的参照を使用すると、これらのデータに簡単にアクセス/共有できますが、このアプローチを好む人はいないようです。なぜですか?
アンチパターン関連の回答を期待していますが、それが何であるかはわかりません。
swift - Apple Watch で iPhone のデータ変更をリッスンするにはどうすればよいですか?
iPhone にテキスト フィールドまたは内部データがあり、データが変更されたときに、それを Apple Watch に自動的にプッシュしたいとします。共有データを使用できることを知っています。しかし、それには、ユーザーが Watch で通話を開始する (たとえば、ボタンを押す) 必要があるようです。共有データに変更があった場合に使用できる Apple Watch のリスナーはありますか? それとも、iPhone が自動的にデータを時計にプッシュし、時計がそれを受信して表示する方法はありますか? それとも他の方法ですか?
ios - iOSでms wordとフォルダを共有する方法は?
アプリケーションで ms office と作業を統合する必要があります。私は記事https://msdn.microsoft.com/EN-US/library/office/dn911482.aspxを使用していますが、ファイルをURLに送信すると、ms wordはそれにアクセスできません:(
送信には、canOpenUrl/openUrl を使用します。URL 文字列は次のとおりです:
ms-word:ofe|u|/var/mobile/Containers/Data/Application/85D7E895-0F0D-4BBF-B83A-41122B6A73E4/Documents/documents/doc_0_148856.docx|p|app_ms_return|c|
doc_148856暗黙的および明示的にプロトコルを指定しようとしました:
ms-word:ofe|u|file:///var/mobile/Containers/Data/Application/85D7E895-0F0D-4BBF-B83A-41122B6A73E4/Documents/documents/doc_0_148856.docx| p|app_ms_return|c|doc_148856
MS Word にはファイルへのアクセス権がないと思いますが、彼に与える方法がわかりません :(
助けてください:)
PS
アクセスを開くことに加えて、MS Wordでファイルを送信するための他の解決策があるかもしれませんか?
node.js - 新しくフォークされたプロセス / webworker に http 応答オブジェクトを送信します
ノードhttpサーバーがあります。メインプロセスがあり、子プロセス/ webworkerをフォークしました。
メイン ノード プロセスが http 要求を処理し、この要求をフォークされたプロセスまたは Web ワーカーに渡して、要求を個別に処理し、応答を送信できるようにします。
問題:- ここで、応答オブジェクトを子プロセス/Web ワーカーに送信できません。
Node では、変数の共有も許可されていません。そのため、親プロセスに保存して、その参照を子プロセスと共有することはできません。
それが可能な方法はありますか?
angularjs - factory と promise を使用してコントローラー間でデータを共有する
わかりましたので、ファクトリ/サービスを使用してコントローラー間でデータを共有することについてはたくさんありますが、私の問題に当てはまるものが見つかりません。答えを間違って解釈しているか、これは私が尋ねようとしている有効な質問です! うまくいけば後者です。
新しい http 呼び出しが行われ、ファクトリ イメージ オブジェクトが更新されたことをコントローラ 2 に認識させたいと思います。現時点では、一度解決され、その後の更新は無視されます。私は何を見落としていますか?
私の見解:
工場:
コントローラー1:
コントローラー2:
android - 2 つのアプリケーションが sharedUserID を使用している - createPackageContext の問題
私は2つの別々のアプリケーションを持っています。appA のコード内で appB がデータベースにアクセスできるようにしたいと考えています。この場合、コンテンツ プロバイダーを使用したくありません。
これに関する SO の投稿を読み、指示に従いました ( 2 つの Android アプリ間で SQLite データベースを共有しますか? )。
私がやった事:
AppA の Android マニフェスト:
AppB の Android マニフェスト:
AppA はデータベースを作成し、AppB はデータベースにアクセスする必要があります。
次のコードは AppB で使用されます。
まったく同じ署名キーを使用して両方のアプリケーションをビルドしようとしました。つまり、署名付き APK をビルド/生成し、インストール前に以前のインスタンスをアンインストールしました。
また、これをデバッグ モードで実行しようとしています。つまり、AppA をデバッグ モードでインストールしてから、AppB をデバッグ モードでインストールします。
後者の場合、次のエラーが表示されます。
com.micode.primaryapplication (uid 10226) からのコードをプロセス com.micode.secondaryapplication (uid 10227) で実行するように要求する
このエラーは、次の行を実行するとヒットします。
問題はインストールにあると思われます。つまり、shareduserid が無視されたため、2 つのアプリケーションが同じ UID を共有しておらず、一意の UID を持っているように思えます。
明確にするために、これらの共有ユーザー ID を使用しているアプリケーションは 2 つしかありません。
どんな助けでも大歓迎です...
java - Java アプリケーション データの保存とアクセスの最良の方法
私は大規模なリファクタリング プロジェクトの真っ最中です。コードには 5000 行のメイン クラスがあり、すべてに注入され、すべてが格納され、すべての共通コードが含まれていました。
私は分析と設計の専門家ではありませんが、できる限り物事を分離しており、メイン クラスに依存するクラスをリファクタリングして、作成した新しいクラスを使用することで約 80% を達成しています。
アプリケーションの起動時に初期化され、アプリケーションの存続期間中、ほぼすべてのデータからアクセスされるタイプのデータがあります。たとえば、何百ものパラメーターを保持する Config クラスがあります。
私が採用したアプローチは、いくつかのシングルトンを作成することです。最も中心的なものは、GUIData と ClientData の 2 つです。GUIData にはアプリケーションのメインフレームへの参照が含まれ、clientdata には config および他の同様のクラスへの参照が保持されます。
これにより、コードのどこからでも ClientData.getInstance().getConfig().getParam("param") を呼び出すことができますが、これが最善の方法だとは思いません。
クラスのインスタンスを含むこれらのデータシングルトンの代わりに、個々の静的クラスを検討しましたが、一部のクラスにはコンストラクターが必要です。
これを行うためのより良い方法を見つけるために、1週間グーグルでオンとオフを繰り返してきましたが、どういうわけか、データベースキャッシングについて話しているスレッドにいつも行き着きます