問題タブ [freeze]

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

java - Java がハングしているように見える

カスタム アプリケーションで Java サービス ラッパーをかなり長い間使用してきましたが、問題なく動作しています。ここ数日でアプリケーションを新しいバージョンに更新してから、JVM がハングし始め、ラッパーがログに次のように出力します。

次に、JVM を自動的に終了し、アプリを再起動します。これは、約 10 時間の実行後に発生するため、デバッグが難しくなります。

もちろん、行った変更に目を通すつもりですが、この種の問題を引き起こしていると思われるような大きな変更は行われていません。

何が起こっているのかを把握するには、どこを参照すればよいですか? アプリケーションからのデバッグ メッセージは、興味深いものを何も示していません。JVM が単にクラッシュした場合、通常はデバッグに役立つダンプが作成されますが、ハングしているため、ダンプは作成されません。サービスを自動的に再起動しないようにした場合、再起動する前に JVM から有用な情報を取得するためにできることはありますか?

私には、JVM が典型的なプログラミング エラーでハングするべきではないように思えます。JVM がハングする原因となる前に、どのようなことに遭遇したことがありますか?

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

iis-6 - IISハングのトラブルシューティング

IIS 6(Windows Server 2003)で時々ハングするWebサイトを実行しています。

タイムライン:

公開され、ウェブサイトは3日間正常に動作しました。

Webサイトは、Webサイトが停止および開始されるまで、すべての要求でハングします。

ウェブサイトは問題なく2週間実行されます。

サイトが再起動されるまで、Webサイトはすべての要求でハングします。

ハングが開始する前に、いくつかのアプリケーションログエントリが表示されます。障害のあるアプリケーションw3wp.exe、障害のあるモジュールが不明、バージョン0.0.0.0の障害アドレス-------。

Webサイトにインストールされているアプリケーションは、.Net2.0で記述されています。

誰かがこの問題のトラブルシューティングについて教えてもらえますか?ありがとう!

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

wpf - BitmapSource を WPF の画像ソースとして使用する

イベントによってソースの更新が必要であると判断されるたびにソース イメージを変更することで、XAML の Image (_browserScreenshot below) オブジェクトを更新しようとしています。今私はこれを持っています:

次に、次のようなイベント ハンドラーがあります。

このイベントが発生するたびに、新しいスクリーンショットが取得され、イメージのソース (ここでは _browserScreenshot と呼ばれます) コントロールが更新される必要があります。IsFrozen プロパティを変更するとエラーが発生し続けますが、これを正しく変更する方法がわかりません。よろしくお願いします。

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

python - シンプルなフリーズ動作デコレータ

Python 用のフリーズ デコレータを作成しようとしています。

アイデアは次のとおりです。

(お二人のコメントに応えて)

私は間違っているかもしれませんが、テスト ケースには主に 2 つの用途があると思います。

  • 1 つはテスト駆動開発です。理想的には、開発者はコードを記述する前にケースを記述します。この分野では、開発前に実際のインターフェイスを定義する必要があるため、通常はアーキテクチャを定義するのに役立ちます。場合によっては、開発者間でジョブをディスパッチする人がテスト ケースを作成し、それを使用して、彼が念頭に置いている仕様を効率的に説明していると考える人もいるかもしれません。そのようなテストケースを使用した経験はありません。

  • 2 つ目は、適切なサイズのプロジェクトと数人のプログラマーが壊れたコードに苦しんでいるという考えです。これまで機能していたものが、無害なリファクタリングのように見える変更によって機能しなくなる可能性があります。優れたアーキテクチャですが、コンポーネント間の疎結合がこの現象と戦うのに役立つ場合があります。プログラムの動作を壊すものがないことを確認するテストケースを書いておけば、夜はぐっすり眠れるでしょう。

ただし、テスト ケースを作成するオーバーヘッドを否定することはできません。最初のケースでは、テスト ケースは実際に開発を導くものであり、したがってオーバーヘッドとは見なされないと主張するかもしれません。

率直に言って、私はかなり若いプログラマーであり、私があなただった場合、この件に関する私の言葉はあまり価値がありません... とにかく、ほとんどの会社/プロジェクトはそのように機能しておらず、ユニットテストが主に使用されていると思います2番目のケースでは...

つまり、プログラムが正しく動作することを保証するのではなく、将来同じように動作することを確認することを目的としています。

このニーズは、この凍結デコレーターを使用することで、テストを作成するコストなしで満たすことができます。

関数があるとしましょう

それは完全に素晴らしく、最適化されたバージョンとして書き直したいと考えています。それは大きなプロジェクトの一部です。いくつかの値に対して同じ結果を返す必要があります。テストケースの苦痛を経験するのではなく、ある種のフリーズデコレーターを使用できます。

デコレータが初めて実行されるときに、デコレータは定義された引数 (0 未満、および 7) を使用して関数を実行し、結果をマップに保存します ( f --> args --> result )。

次にプログラムが実行されると、デコレーターはこのマップをロードし、これらの引数に対するこの関数の結果が変更されていないことを確認します。

私はすでにデコレータを簡単に書きました(以下を参照)が、あなたのアドバイスが必要ないくつかの問題を傷つけています...

  • 結果のダンプと比較は、すべてのタイプで簡単ではありません。現在、この問題を解決するために、関数 (ここではポストプロセスと呼んでいます) を使用することを考えています。基本的に、res を格納する代わりに、postprocess(res) を格納し、res1 res2 を比較する代わりに、postprocess(res1)==postprocess(res2) を比較します。ユーザーが定義済みの後処理関数をオーバーロードできるようにすることが重要です。私の最初の質問は 、オブジェクトがダンプ可能かどうかを確認する方法を知っていますか?

  • 装飾された関数のキーを定義するのは面倒です。次のスニペットでは、汎用モジュールとその名前を使用しています。**それを行うためのよりスマートな方法を考えてもらえますか? **

  • 以下のスニペットは機能していますが、テスト時と記録時にファイルを開いたり閉じたりします。これはただのばかげたプロトタイプです...しかし、ファイルを開き、すべての関数のデコレータを処理し、ファイルを閉じる良い方法を知っていますか...

  • これにいくつかの機能を追加する予定です。たとえば、イテラブルを定義して一連の引数をブラウズしたり、実際の使用から引数を記録したりする可能性を追加します。なぜそのようなデコレータを期待するのでしょうか?

  • 一般に、その制限を知って、そのような機能を使用しますか? 特に POO で使用しようとする場合は?

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

windows - 終了したハングしたアプリケーションを検出する

プロセスを実行してデバッグする最小限のデバッグ ループを作成しました。

プロセスがハングし、ユーザーがプロセスを閉じようとすると、Windows はメッセージ ボックスに、待機するかすぐに終了するかを選択するオプションを表示します。デバッガーが関連情報を収集できるように、いつ終了するかを検出したいと思います。ただし、この状況を検出する方法がわかりません。スレッドとプロセスの終了コードは 0 のままです。ある時点で 0xCFFFFFFF を返していると思っていましたが、それは発生しなくなりました。

または、ワトソン博士のように、アプリを閉じた後にこのデバッガーを実行するように変更できるレジストリ エントリがいくつかあるかもしれません。私のマシンだけかもしれませんが、ハングしたアプリを閉じるときにデバッガー (VS JIT デバッグ、ワトソン博士など) を起動できないようです。

以前に HUNGAPP ダンプを見たことがあるので、これが何らかの形で可能であるに違いないことはわかっています。

情報をありがとう!

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

sql-server - 一部の従来の ASP ページの実行にランダムに非常に長い時間がかかる理由を見つけるにはどうすればよいですか?

私はかなり大規模な古典的な asp/SQL Server アプリケーションに取り組んでいます。数か月前に、多くの新機能を備えた新しいバージョンが公開されましたが、どこかに非常に厄介なバグがあるに違いありません。非常に基本的なページのいくつかは、ランダムに実行に非常に長い時間がかかります。

いくつかの手がかり:

  • データベースではありません: クエリ プロファイラーを実行すると、実行時間の長いクエリが検出されません。
  • IIS 診断ツールを起動すると、reqviewer が要求の状態が「処理中」であることを示します
  • これはどのページでも発生する可能性があります
  • 簡単に再現することはできません。完全にランダムです。
  • 「非常に長い時間」のアイデアを得るために:今朝、通常は100ミリ秒以内にクライアントに返されるはずのページの実行に5分以上かかりました。
  • このアプリケーションは、かなり大きなファイルのアップロードとダウンロード (サイズは最大 2 GB) を処理できます。これは、SoftArtisan FileUp を使用して、従来の ASP スクリプトでも処理されます。ただし、それが問題を引き起こすとは思わないでください。これらのアップロードはかなり前から行われています。
  • 2 つの別々のサーバーで問題が発生しました (2 つの別々の場所にあり、データのセットが異なります)。1 つは古き良き SQL Server 2000 でアプリケーションを実行しており、もう 1 つは SQL Server 2005 を実行しています。どちらの場合も Web サーバーは IIS 6 です。

問題が何であるか、またはその種の問題を解決する方法について何か考えはありますか?

ありがとう。

セバスチャン


編集 :

問題は、メモリの断片化が原因でした。一部の ASP ページは、サーバーからファイルをダウンロードするために使用されました。ファイルのサイズは、数キロバイトから 2 GB 以上になる可能性があります。サイズのこれらの変動は、メモリの断片化を引き起こしました。asp ページの実行にもかなりの時間がかかる場合があります (ユーザーがページをダウンロードする時間から、IIS レベルでキャッシュに入れられたものを差し引いた時間)。これは、迅速に実行する必要があるサーバー ページの標準ではありません。

これは私が物事を改善するためにしたことです:

  • セッションをオフにして、すべてのダウンロード ロジックを 1 つの ASP ページに配置します。
  • これにより、その ASP ページを特定のプールに配置して、頻繁にリサイクルすることができました (ダウンロードによってアプリケーションの残りの部分が妨げられることはなくなりました)。
  • メモリの断片化を減らすために、Windows 2003 ではデフォルトではない LFH (Low Fragmention Heap) を有効にします。

LFH の参照:

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

visual-studio-2008 - VS2008Intellisenseが右クリックでぶら下がっている

Visual Studio2008SP1にはかなり大きなC++ソリューションがあります。右クリックすると、ステータスバーに更新中のインテリセンスが表示され、スタジオ全体が数分間フリーズします。

2005年には右クリックで問題なく動作しました。

回避策はありますか?

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

ruby-on-rails - Rails のバージョンや gem を凍結する意味は何ですか?

どういう意味ですか?

プロジェクトの説明書には、「Rails gem をフリーズする」と書かれていました。それはRails版をフリーズするのとは違うのですか?

何が凍っていますか?

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

wpf - WPF オブジェクトをフリーズすると、どのようなシナリオでパフォーマンスが大幅に向上しますか?

WPF の多くの型は から派生していFreezableます。変更可能な POCO オブジェクトに不変性を提供し、明らかに、特定の状況でパフォーマンスを向上させることができます。

WPF アプリケーション内でオブジェクトをフリーズすると、パフォーマンスが大幅に向上することに気付いた人はいますか? もしそうなら、凍結されたときに最大のパフォーマンスの違いをもたらしたのはどのアイテムですか?

(同様の別の質問も投稿したことに注意してください)