問題タブ [lag]
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.
performance - 人間が検出できる最小の遅れは?
重複の可能性:
認識可能な最短のアプリケーション応答遅延は?
少しラグが感じられるので、いくつかの JavaScript UI コードのプロファイリングを行っています。これまでのところ、いくつかのボトルネックを見つけて最適化してきましたが、これに対する測定可能な要件を定義したいと思います。
人間が遅延に気付かないためには、どのくらいの速さで応答する必要がありますか? たとえば、キーボードのキーが押されてから文字が画面に表示されるまでの検出可能な最小遅延は? 最適化をさらに進めても、人間にとって何の違いも生じないのはどの時点でしょうか?
多くのモニターのリフレッシュ レートは 60 ~ 120 Hz の範囲です。マジックナンバーは8~16ms程度ということでしょうか?
process - AppleScript を介して最前面のプロセスを取得するのに、なぜそんなに時間がかかるのですか?
私は最近、グローバル ショートカットを使用して現在フォーカスされているウィンドウ内を移動するWindowTilerというユーティリティ プログラムを作成しました。AppleScript を使用してウィンドウ内を移動し、次のスクリプトを使用して、フォーカスされたウィンドウの境界を取得します。
時間が経つにつれて、しばらく使用しないとアプリの反応が遅くなることに気付きました。時間のパフォーマンスを集中的に測定した結果、表示されている AppleScript の2 行目が応答の遅さの原因であることがわかりました。スクリプトの実行に 1 秒かかることもありました (私の知る限り、SSD では、HDD ではさらに悪化します)。
AppleScript が最前部のプロセスを検索するだけで、なぜこれほど長い時間が必要なのかはわかりません。これは、Process Manager への唯一の要求である必要があります。なぜそんなに遅いのか、スクリプトを高速化する方法を教えてください。
PS: アプリ (「アーカイブ」) を作成するときに、AppleScript をプリコンパイルするように Xcode を構成しました。コンパイルされたスクリプトは読み取り専用です。
java - リモート RMI での長い遅延 (冗長性を意図)
このかなり単純な RMI 通信があります。
サーバ:
クライアント:
同じマシンで実行すると、これは正常に機能します。ただし、クライアントとサーバーの間にある程度の距離があると、バラバラになります。その後、サーバーが応答するまでに約 2 分かかります。
Linux の ping によると、レイテンシは 20 ミリ秒です。奇妙なことに、それが表示されるまでにはしばらく時間がかかりますが、たとえば ping google.com (これも 20 ミリ秒) ではかなり迅速に結果が得られます。
何が起きているのでしょうか?これをどのように分析できますか?
flash - Actionscript3/flash cs4: ブラウザから起動した時のラグを解決する方法
私はフラッシュ ゲームに 1 か月間取り組んできましたが、これはブラウザーで簡単にプレイできるはずです (軽い計算です)。そうは言っても、一部のブラウザーでは、ゲームが 15 fps のように見える (ゲームは 80 fps で実行する必要がある) で実行されることに気付きました。これは IE9 で発生することが知られており、次の行を html の先頭に追加することで簡単に修正できました。
これは、IE を強制的に互換モードにし、fps を大幅に改善するクイックフィックスでした (たとえば、約 60 まで)。
それでも、ゲームの実行速度はすべてのブラウザで必要以上に遅いと思います。これは、html バージョンと swf を比較すると明らかです。
また、ゲーム内の動き (html) が「よろめく」こともかなり目立ちます。これらのよろめきは、ゲームの美学を損ない、したがってプレイアビリティを損ないます!
これらすべてのことから、ブラウザーはコンピューターのグラフィックス カードへのアクセスを制限していると私は信じています。
1) html では遅く、swf では速い
2) サウンドは通常の速度で再生されますが、グラフィックは遅れます
編集
3) ゲーム内のすべてのグラフィックはかなり低解像度です (つまり、幅 1x高さ 1 としてゲーム内に表示されるグラフィックは、幅 1x高さ 1 の png のムービークリップです) + 可能な限り最小限に抑えます
4) 非常に (計算上) 単純なフラッシュ プロジェクトを作成しましたが、グラフィックの動きに同じ問題が発生しました。
ブラウザでのゲームの滑らかさを向上させる方法について誰かアドバイスをもらえますか?
javascript - 最小限または*定量化された*ラグでサウンドを再生するにはどうすればよいですか?
jQueryで心理学アプリを書いています。私のプロジェクトの一部では、音 (ユーザーがキーを押す) に対するユーザーの反応時間を測定する必要があります。したがって、サウンド ファイルを呼び出し (& タイムスタンプ) してから実際に再生を開始するまでのラグを最小限に抑えてサウンド ファイルを再生する必要があります。ほとんどのサウンド プラグインは、ラグの処理方法について詳しく説明していません。ベストな方法を教えてください!
堅実なCSに根ざした回答のみ(「このプラグインは速く聞こえる」ではありません)が私にとって役に立ちます。少なくとも、使用している方法 (信頼区間の計算) で考えられるラグの範囲を知る必要があります。
別の実際に好ましい解決策は、ラグを定量化する方法です。その場合、ラグの長さは重要ではありません。簡単に修正できるからです。
どのサウンド ファイルを使用するかはわかりませんが、非常に小さいものになると思います。それぞれ 100kb の 2 つの .wav ファイルは、おそらく安全な見積もりです。
android - 翻訳アニメーションは本当にぎくしゃく/ぎくしゃく/遅れているようです
こんにちは、私はここに見られるように翻訳アニメーションを使用しています:
アニメーション中にちらつき/ジャークするように見えることを除いて、今では正常に動作しますか? これは標準ですか?
6 つの異なるビューを同時にアニメーション化していますが、これが原因ですか?
これは私がアニメーションを設定する方法です:
アニメーションが実際に私にはがらくたのように見えるので、ここで何かが欠けています..?
c# - C#: プログレスバーの描画が終了するまで待ちます
重複の可能性:
Winforms プログレス バーが更新されない (C#)
こちらで初めて質問させていただきます。
このコード スニペットを使用して問題を説明します。
このコードの問題は、プログレスバーの描画が終了したときではなく、for ループが終了したときに MessageBox がポップアップすることです。プログレスバーの描画が完了するまで待ってから続行する方法はありますか?
みんなありがとう!
android - getView() を使用した ListView は、一定の GC が原因でオーバーライドされて遅くなりますか?
アプリに ListView があり、getView() メソッドをオーバーライドして、行のテキストに応じて行の ImageView src を変更できるようにしました。
問題は、ListView のスクロールが遅れていることに気付きました。DDMS をチェックすると、ListView がスクロールされるたびにガベージ コレクターが呼び出されているようで、スクロールが遅くなります。
また、BufferedReader から行を読み取るときに、アプリの別の部分でガベージ コレクターが呼び出されていることに気付きました。これにより、2,000 行のファイルを開くのに約 47 秒かかります。携帯電話にインストールしたファイル エクスポーラーが開くと、約2秒で同じファイル。
私の質問は、ガベージ コレクションが 200 ミリ秒ごとに一定の原因で発生している可能性があることと、それを防ぐにはどうすればよいかということです。それは私のアプリを本当に遅くしています。私が解決しなければ、一部のユーザーを先延ばしにするのではないかと心配しています。
ありがとう、アレックス。
リストビュー getView():
ファイルを開くコード
先日、ファイルを開くのにかかった秒数をログに記録するコードを削除しましたが、47 秒かかり、明らかに時間がかかりすぎました。再び while ループが実行されている間、ガベージ コレクターへの呼び出しが絶え間なくあります。ファイルの読み取りが遅い原因を推測しています-はい、この関数は、ファイルの読み取り中にprogressDialogが表示されているスレッドで呼び出されます
アップデート:
ファイル読み取りの問題は解決されました。文字列の連結により、各ループの後にガベージ コレクターが呼び出され、ファイルの読み取りが劇的に遅くなることが判明しました。回答で示唆されているように、代わりに StringBuilder を使用しましたが、すぐに開きます-万歳!
2回目の更新:
ListView をスクロールするときに一定の GC が呼び出される原因はわかっていますが、これは ListView の属性 android:cacheColorHint="@android:color/transparent" ですが、回避策はわかりません。
sql - 日付間隔外の重複の検出
SOで検索しましたが、直接的な答えが見つかりませんでした。
患者、病院、診療科(ER、泌尿器科、整形外科、内科など)、診療コード(検査、外科手術、MRI、超音波、その他)、患者の診察日があります。
患者は医者を訪ね、医者は薬を処方し、コントロールチェックのために再び来るように頼みます. 患者が10日後に戻ってきた場合、同じ病院に別の検査料を支払う必要があります. 病院は、検査料を受け取るために、次の 10 日間に利用可能なスロットがないことを告げて、10 日後に日付を指定する場合があります。
テーブル構造は次のようになります。
ここでは、訪問患者No. 3および5は、患者No.3 人は別の病院を訪れ、患者 5 は別の診療所を訪れます。10日以内に来院しても受験料はかかります。
ただし、患者番号 1 は、01/05 と 14/05 に同じ病院、同じ支店を訪れ、同じプロセス (P1: 検査) を受けます。
26/05は健康診断ではないので数えません。
私がフラグを立てたいのは、同じ患者、同じ病院、同じ支店、同じ診療コード (具体的には健康診断: P1 ) で、日付範囲が 10 日を超えていることです。
結果のテーブルの形式:
ありがとう。
c# - ウィンドウにフォーカスがあると XNA が遅れる
私は XNA 3.1 を使用して xna game studion 向けに開発を行っていますが、一部のゲームで、処理するためのリソースがシステムに十分にあるにも関わらずゲームが遅くなる問題に気付きました。ゲームのウィンドウがフォーカスされると、プロセス #1 (タスク マネージャー内) の使用率が 100% になり、ゲームにマイナー ラグの兆候が見られます (サウンド エフェクトが順番に繰り返される場合に特に顕著です)。ゲームがウィンドウのフォーカスを失うと、リアルタイムで描画と更新を続けますが、プロセスの使用量が減り、ラグがなくなります。
これをさまざまなゲームでテストしましたが、結果は変わらず、コードやコードの効率とは関係がないことが証明されました。
これは Xna 3.1 に限定された問題ですか? また、修正はありますか? それとも、4.0 に切り替えて、下位互換性のないものをゲームで使用しないようにする必要がありますか?