問題タブ [time-limiting]

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

php - phpでtime_outが気になる

サーバー上でzipファイルを解凍したときに「phpタイムアウト」という問題が発生しましたが、これはずっと前のことで、現在は別のサーバーを使用しています。私の現在のスクリプトは、いくつかのフォルダーを作成し、この順序でファイルを作成し、内部に写真を含む zip ファイルを抽出する必要があります。次に、すべての画像のサムネイルを作成します。スクリプトは完成しており、うまく機能していますが、タイムアウトエラーが心配です。1 つの zip ファイルで 10 枚の写真をテストしました。それは非常に速く動作します。しかし、ユーザーが 400 枚の写真を含むパッケージをアップロードすると、さらに時間がかかります。400枚以上の写真をアップロードできるはずです。それが、zip ファイルのアップロードを作成する理由です。タイムアウトエラーが発生する可能性はありますか? このサーバーで使用できるかどうかわかりません

使用できる場合、スクリプトに何回必要かわかりません。多分私は何も心配していません

0 投票する
0 に答える
96 参照

r - 30分以上実行されているR関数を停止する方法は?

複数の方法を使用してコードをテストしています。

たとえば、特定のメソッド/関数にglm()30 分以上かかる場合、R セッションを終了せずに、その関数を強制終了して次の関数に進みたいと考えています。

つまり、R 関数に時間制限を設定して次のステップに進む方法はありますか?

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

java - X番目の回文を見つける方法は?

親愛なる友人:

  • 文字列と同様に、一部の数値も回文です。例: 1、2、3、4、5、6、7、8、9、11、22、33、...、101、111、...、753537、...など。

  • ユーザーの入力に応答するために、最初の 10.000 個の回文数を見つける方法を考える必要があります1 から 10000 番目の回文数まで。 たとえば、ユーザーが 12 と入力した場合、1 から 10.000 までの 12 番目の回文数は何ですか?

  • 入力は一連の行で構成され、各行には 1 つの整数値 i (1 <= i <= 10000) が含まれます。この整数値 i は、出力に書き込まれる回文数のインデックスを示します。ここで、インデックス 1 は最初の回文数 (1) を表し、インデックス 2 は 2 番目の回文数 (2) を表し、以下同様です。

元:

入力 1 --> 出力は次のようになります: 1

入力 12 --> 出力: 33

入力 24 --> 出力: 151

  • ちなみに制限時間は1秒。 これらの要因を考慮して、この問題を解決するための正しいアルゴリズムは何ですか? あなたが私を助けて、Javaで賢明なソリューションコードを示すことができれば、とても感謝しています. チェックしてくれてありがとう!
0 投票する
2 に答える
694 参照

java - Java メソッドを完全に終了する

私のメソッドは、メソッドが終了していない場合、3 秒以内にcheckConnection()呼び出しメソッドを終了するsetPort()内に呼び出します。これはうまく機能し、制限時間を超えた場合はTimeLimiter例外です。com.google.common.util.concurrent.UncheckedTimeoutExceptionただし、この例外がスローされた後setPortでも実行され、完了すると、ポートを開く try ステートメント内のコードが実行されますがThread.sleep(100)、InterruptedException に到達するとメソッドが終了します。ただし、これによりポートが開いたままになり、問題が発生します。制限時間を超えると、call()メソッド内のすべてのコードが停止する方法はありますか?

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

c# - USB バーコード スキャナからのみ入力を読み取るように Windows フォームのテキスト ボックスを制限するにはどうすればよいですか?

ユーザーがバーコード スキャナーから入力を取得する必要があるアプリケーションを開発しています。数秒でデータをスキャンして返す USB タイプです。

いろいろな手法でキーボードからの入力を止めようとしました

テキストボックスを読み取り専用にしましたが、リーダーからの入力を取得できませんでした

管理されたキープレスイベントですが、バーコードリーダーは実際にはキーボードとして機能するため、必要な出力を取得できませんでした

Windowsフォームのテキストボックスに入力を提供する特定の時間でユーザーを制限したり、特定のポートからのみ入力を提供することを制限したりする方法はありますか?

128symbologyバーコードを生成するコードを使用します。

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

performance - 特定の範囲の最多桁

まず第一に、これは私の宿題ではありませんをダウングレードする前に、この質問はcodingbatまたはeulerprojectまたは別のWebサイトに属しています. 私は、完全に完成したコード化された回答を私に提供するようにあなたに求めているのではありません。

後で、この問題で時間制限の問題が発生しています。私は実際にそれを解決しましたが、私の解決策は遅すぎます。0~1秒以内で行う必要があります。最悪のシナリオでは、私のコードは 8 秒以上消費します。いくつかのアイデアを手伝ってくれたり、より正確なソリューションの疑似コードなどを見せてくれたりしたら、本当に感謝しています。

最初の入力は、処理する回数を意味します。後で、ユーザーが 2 つの数値[X, Y] (0 < X < Y < 100000)を入力します。この 2 つの数値 X と Y の範囲で最も頻繁に使用される桁を計算する必要があります ( Xと Y を含む) 複数の数字の最大頻度は、それらの最小のものを印刷すると想定されるものと同じです。

説明する:

ユーザーが最初に入力するテスト ケースの数: 7

ユーザーが X と Y を入力 (最初のテスト ケース): 0 21

今、私は自分のソリューションですべての数字を開いたので、自由に使用できる別のアイデアがあるかもしれませんが、ヒントを与えるために: 0 1 2 3 ... (ここでは 10 を1として開く必要があります) のように数値を処理する必要があります0はすべて同じ) 1 0 1 1 1 2 1 3 ... 1 9 2 0 2 1 0 から 21 までの最も頻繁な桁を表示します(この場合: 1)

その他の例: (ソリューションを確認したい場合のテストケース)

X: 7 Y: 956結果: 1

X: 967 Y: 8000結果: 7

X: 420 Y: 1000結果: 5など

これまでの私のコードは次のとおりです。

ご覧のとおり、ユーザーが X: 0 Y: 1000000 と入力すると、8 ~ 9 秒のように時間がかかりすぎます。しかし、それは1秒で答えを返すはずです。チェックしていただきありがとうございます...

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

php - PHP で popen/fgets に時間制限を課す

PHPのpopenで開いたfgetsを使ったプロセス読み込みに時間制限をつけたい。

私は次のコードを持っています:

私は成功せずに試しました:

プロセスは次のとおりです。

  1. ブラウザーは、HTML5 サーバー側イベント形式で応答を待機する GET 要求を送信します。
  2. リクエストは AWS Load Balancer によって受信され、EC2 インスタンスに転送されます。
  3. 答えはファイルの最後の 30 行です
  4. ブラウザは 30 メッセージで受信し、接続は維持されます。
  5. tail コマンドが新しい行を送信した場合、それが返されます。それ以外の場合、fgets は、tail コマンドから新しい行が返されるまで未定義の時間待機します。
  6. 60 秒間ネットワークが非アクティブになった後 (60 秒間新しい行がない)、AWS Load Balancer はブラウザへの接続を閉じます。EC2 インスタンスへの接続が閉じられていません。
  7. ブラウザーは接続が閉じられたことを検出し、新しい接続を開きます。プロセスはステップ 1 に戻ります。

この手順で説明されているように、AWS ロード バランサーと EC2 インスタンス間の接続は決して閉じられません。数時間または数日後に、何百ものテール プロセスと httpd プロセスが実行され、サーバーが応答しなくなります。

もちろん、これは AWS Load Balancer のバグのようですが、プロセスを開始して Amazon の注意を引き、修正を待つ必要はありません。

私の一時的な解決策は、サーバーが不安定になる前にプロセスを強制終了するために sudo kill tail を実行することです。

fgets が終了するのを待って PHP が「ブロック」されているため、PHP はスクリプトを停止しないと思います。

AWS Load Balancer の時間制限が編集可能であることは知っていますが、デフォルト値のままにしておきたいです。制限を高くしても問題は解決しません。

質問を時間制限/タイムアウトでLinuxでプロセスを実行する方法に変更する必要があるかどうかわかりません。

PHP 5.5.22 / Apache 2.4 / Linux カーネル 3.14.35-28.38.amzn1.x86_64