問題タブ [lifetime]

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 投票する
5 に答える
1490 参照

c++ - 一時オブジェクトにはスコープがありますか?

名前にはスコープ(コンパイル時プロパティ)があり、オブジェクトには存続期間(ランタイムプロパティ)があります。右?

一時的なオブジェクトが「範囲外になる」と話している人をよく見かけます。しかし、一時オブジェクトには名前がないので、この文脈で「スコープ」について話すのは意味がないと思います。一時オブジェクトの存続期間は非常に明確に定義されており、スコープとは関係ありません。同意しますか?

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

generics - C# Unity2:lifetimemanager 使用時のジェネリック解決の問題

私は Unity 2 で ASP MVC 3 (RC) を使用して大成功を収めています。ただし、頭を抱えることができない問題が1つあります。舞台裏では、リポジトリからアクセスする POCO (Person、Company、...) を使用しています。リポジトリはジェネリック (EFRepository) として作成され、コンテキストを使用します。汎用リポジトリ タイプで LifetimeManager を使用しない場合、すべてが期待どおりに機能します。

ただし、LifetimeManager をリポジトリに追加すると、解決に失敗します。

何か案は?HttpRequestLifetimeManager の実装は非常に標準的です。

どんな助けでも大歓迎です!

ありがとう!/ビクター

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

asp.net - ASP.NET セッション オブジェクトの寿命の悲観的な仮定 !

オブジェクトをチェックし、session存在する場合は、そのオブジェクトを間接的に使用する別のメソッドを呼び出します。2 番目のメソッドは数ナノ秒でこのオブジェクトにアクセスしますが、オブジェクトが 2 つの呼び出しの間に正確に期限切れになる状況を考えていました。Sessionこのような問題を防ぐために、オブジェクトはコードからのすべての読み取りアクセスでその寿命を延ばしますか? そうでない場合、問題を解決する方法は?

取得したオブジェクトを最初のメソッドから 2 番目のメソッドに渡さない理由を説明すると、これは、Page内部に他の多くのパラメーターを保持する ASP.NET オブジェクトを 2 番目のメソッドに渡しているためです。それらを別々にすると、Page今は 1 つのオブジェクトを渡すだけですが、多くのパラメーターがあります。

0 投票する
5 に答える
813 参照

c++ - C ++:一時的なものへの定数参照

SOの定数参照の存続期間についていくつか質問がありますが、それでもわかりません。

このコードは有効ですか?

式( )が評価された0後に期限切れになるはずなので、直感的にはノーと言います。S s(0);

ただし、GCCとCLANGはどちらも警告なしに正常にコンパイルされ、valgrindはランタイムエラーを検出しません。

参照について何が欠けていますか?

0 投票する
4 に答える
285 参照

c++ - 暗黙的にキャストされた一時的なものの寿命

私はこの質問を見ました。キャストに関係なく、一時オブジェクトは完全な式が評価されるまで「存続」するようです。しかし、次のシナリオでは:

1つはうまく動作しますが、2つはそうではありません。そしてMSVCは私に2についての警告を与えました:「参照メンバーはコンストラクターが終了した後に持続しない一時的なものに初期化されます」

今、私はなぜ彼らが一時doubleオブジェクトを作成してそれを渡すのか疑問に思っていますがbar<const double&>、2つだけが失敗しました。

@アップデート

元の投稿の代わりに構造体バーを使用boost::tupleしています。他の人に親しまれていることを願っています。

私の質問をもっと明確にしましょう。#1では、(2)doubleからテンポラルが作成され、そこからaが作成されて、にコピーされます。#2では、テンポラルが作成され、のctorのメンバーからテンポラルが作成されます。#1ではなく#2でテンポラルが破壊されているようです。なんで?それらはすべて完全な表現の一部であり、戻るまで存在するはずだと思います。intbar<const double &>foobar<int>doublebar<int>bar<const double&>doublefoobar

ティムは、「コンパイラは、この2をintではなくdoubleとして扱うのに十分賢い」と述べています。だから私は2つの呼び出しの両方に書き込みint i = 2;、パスiしましたが、物事は以前と同じように進行します。VS2008でデバッグモードで作成しました。

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

windows-phone-7 - WP7: プッシュ通知サブスクリプションの有効期間?

MPN サーバー上のクライアント/電話によってサブスクリプションが作成された場合、それはどのくらいの期間存続しますか? いつ閉鎖されますか?アプリ ユーザーは、接続を開いたままにしておくために、アプリを起動して新しいチャネルを時々作成する必要がありますか?

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

c++ - SWIGのPythonラッパー内の一時オブジェクトの存続期間(?)

2月12日編集

私は最近、いくつかのC++クラス用にSWIGで生成されたPythonラッパーを使用して奇妙なクラッシュを思いついた。SWIGとPythonを組み合わせることで、一時的な値をクリーンアップすることに熱心になっているようです。実際、非常に熱心なので、まだ使用されている間にクリーンアップされます。大幅に凝縮されたバージョンは次のようになります。

.iファイルでSWIG(1.3.37)を実行し、Pythonで次のようにします。

2番目の例では、のフィールドBarを読み取る前に一時オブジェクトが破棄されているようです。gdbで物事を追いかけていると、これが明らかに起こっていることです。したがって、から読み取るまでに、C ++はすでに破棄されています(そして他のヒープ割り当てで上書きされています)。私の実際の状況では、これがセグメンテーション違反を引き起こしています。theFoovalue.valueBar().theFoo.theFoo

ここに戻るExample.iためにファイルに追加できるSWIGディレクティブまたはトリックはありますか?Bar().theFoo.value1

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

php - Ajax呼び出しによるPHP変数の有効期間

通常、変数は破棄され、ガベージコレクターが必要と判断するとすぐに、変数が占有していたメモリが解放されます。基本的に、現在実行されているスクリプトが終了した直後ですよね?

今、私はAjaxが取得した変数の存続期間に興味があります。

変数は通常、実行中のスクリプトが終了した後、つまりページのリロード時にパージされるため、Ajaxもこのカテゴリに分類されますか?PHPからファットJSON配列を受け取るスクリプトがあり、使用が終了した後、「arrayVar = null」のJS変数のみをクリアする場合、それで十分ですか?または、返された配列も作成したPHP変数の設定を解除する必要がありますか?例えば:

含める方が良いでしょうか...

... die()呼び出しの前に?これは、いくら少なくても、メモリを節約しますか?

乾杯

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

android - Androidでアクティビティの死をシミュレートする

システムのリソースが不足すると、バックグラウンドでのアクティビティがその状態をシリアル化し、OSによって強制終了されることがわかっています。再開すると、OSはonCreateメソッドに渡されたsavedInstanceStateによってアクティビティ状態を回復します。シリアル化/リカバリされるものを処理する責任があることを考慮して、リカバリ用に作成したコードをテストするために、アクティビティを強制終了したいと思います。どうすればそれを達成できますか?アプリケーションメニューからアプリケーションを強制的に強制終了しても効果はありません。

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

android - 検索ボタンをクリックするとキャンセルできないダイアログが閉じられます

アプリケーションにキャンセル不可のダイアログを表示していますが、ユーザーが検索ボタンを押すとキャンセルされます。onSearchRequestedとonKeyDownをオーバーライドしようとしましたが、役に立ちません。なにか提案を?