問題タブ [timertask]

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

android - TimerTask、Geolocation、Looper

アプリケーションで次のロジックを実行する必要があります。毎分、GPS位置を20秒間リッスンして、GEO位置の修正を取得できるようにします。

これは明らかに、UIスレッドとは異なるスレッドを実行する必要があります。

しかし、私はルーパーとタイマータスクを組み合わせて使用​​することにいくつかの問題があります...

これを達成するための最良の方法は何ですか?

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

java - Java TimerTaskは、変数をfinalにする必要があります

とにかく、チャットプログラムのようなものを作成しようとすると、誰かがこのコードを使用して新しいメッセージをチェックし、ユーザーがメッセージを送信できるようにするように言われました。

ここで、read.readChat(line);は別のファイルからのメッセージを表示するメソッドです。Javaはreadline両方とも次のように宣言する必要があると言っています...特に " "は変数であり、変更する必要があるためfinal、理由がわかりません。line

さらに、それらを最終として宣言した後、次のエラーが発生します。

私は何が間違っているのですか?

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

android - Android TimerTask が 2 回呼び出されるとクラッシュする

ボタンのクリック時に TimerTask (m_timer) を呼び出しています。

m_timer.schedule(m_progressUpdater, 0, 500);

私の実行方法を開始します:

これを一度呼び出すと、完全に機能します。もう一度呼び出すと、アプリが応答しなくなります。CompleteTask() メソッドでタスクをキャンセルする必要があると考えていますが、TimerTask と Timer の両方をキャンセルしようとしましたが、それでもクラッシュします。誰が問題が何であるか知っていますか?

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

java - timerTaskを一時停止します

私は別の壁にぶつかった。キー入力が機能した後、私は何時間も頭を悩ませてきました。一時停止機能を作成したいので、同じキーをもう一度押すと、timertaskの実行が停止します(つまり、ゲームが一時停止されます)。

問題は、ネストされたクラスのtimerTaskメソッドのためにグローバルブールisRunning varを使用して、キーが押されるたびに切り替えることができないことです(したがって、ブールisRunningはアクセスするためにfinalとして宣言する必要があります...)。キーがもう一度押されたかどうか、またはゲームがすでに実行されているかどうかを検出して、timerTaskを一時停止/キャンセルできるようにする方法に関するアイデア。

サムに感謝します

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

android - インスタンスメソッドのスケジュールに関するアンドロイドエラー

私は新しい Android 開発者です。スケジュールに問題があります。

インスタンス メソッドの 1 つが 1 秒の遅延で呼び出されるようにスケジュールしたいと考えています。Timer と TimerTask を試しましたが、うまくいきませんでした。メソッドを呼び出しましたが、メソッドで相対レイアウトにビューを追加しています。そこにエラーが発生します。スケジューリングなしで、同じメソッドを呼び出しても失敗しません。

では、この種の問題なしに遅延を伴うメソッドを呼び出す方法は何ですか?? または、それが私のUIThreadであるため、スレッドを一時停止せずに遅延を待つことができる方法はありますか??

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

android - Web からデータを受信するときにリストビューをリロードする

Web から 30 秒ごとにデータを受信します。問題は、リストビューのデータが更新されないことです。私はこのコードを使用します:

リストビューにデータを入力するには:

リストビュー用のWebデータから取得しましたが、画面に表示されません。助けてください..私はこれに多くの時間を費やしました:(

ここに私のプレイリスト配列があります:

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

java - Java TimerTaskがタイマーでスケジュールされている場合、それはすでに「実行中」ですか?

TimerTaskについて明確にしたいと思います。以下のコードがある場合:

タスクが次の1分で実行されるようにスケジュールされている場合、タスクオブジェクトはすでに実行されていますか?

コードのどこかでtask.cancel()を呼び出しましたが、呼び出しが妨げられないようです。

実行するタスク。呼び出しからの戻り値もログに記録しましたが、falseが返されます。

キャンセル方法のドキュメントを読んだときに、質問がありました。

TimerTaskをキャンセルし、Timerのキューから削除します。通常、呼び出しによってTimerTaskの実行が少なくとも1回妨げられなかった場合は、falseが返されます。後続の呼び出しは効果がありません。呼び出しによってスケジュールされた実行が実行されなかった場合はtrueを返し、それ以外の場合はfalseを返します。

1分の遅延の前にcancel()を呼び出したと思います。しかし、どうしてキャンセルがfalseを返したのでしょうか。

[タスク]はすでに実行されていますか?

手がかり/ヒント、さらにはこれについての説明を教えていただければ幸いです。ありがとうSO!

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

android - ScheduledThreadPoolExecutor、TimerTask、または Handler はどこで作成して使用できますか?

RSS フィード リーダーで 10 分ごとに新しい投稿がないかフィードをチェックし、新しい投稿がある場合はそれらを解析する必要があります。UI も毎分更新する必要があります。

私はさまざまな情報源からさまざまなことを読んだり聞いたりしました。私の現在の理解では、 を使用ScheduledThreadPoolExecutorして 2 つのスケジュールされたスレッドを作成でき、そのうちの 1 つはHandlerUI を更新するために必要です。これらのクラスまたはTimerTask.

また、これらのサブクラスをどこで作成するかについても非常に不確かです。ある友人は、クラスを簡単にするためTimerTaskに、クラスの内部クラスとして拡張することを提案しました。FeedParserただし、そのように実装するには、run()メソッドをTimerTaskオーバーライドせずに使用する必要があります。つまり、実行する必要がある関数に必要なパラメーターを単純に使用することはできません。

要するに、このためのタスクをスケジュールする最良の方法は何ですか?また、これらをどこに実装しますか?

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

java - 次の実行までTimerTaskを一時停止します

私はTimerTaskを使用していくつかの定期的なタスクを実行しています。このタスクは一連のファイルを処理しています。処理するファイルの数が事前に決定された制限を超えた場合、スレッドは実行を一時停止し、次のサイクルまでファイルの処理を再開するまで待機するという要件があります。次の実行期間までTimerTaskを一時停止する方法はありますか、それともこの機能を実現するためにTimerTaskクラスを拡張する必要がありますか?TimerTask.cancelメソッドがあることを確認しましたが、これにより、このスレッドのそれ以降のすべての実行がキャンセルされます。私はこれが起こらないようにしたい。次の実行期間までスレッドを一時停止したいだけです。フレームワークはTimerTaskを使用しているため、Javaの他の並行クラスに移動する余裕はなく、それに固執する必要があります。

任意の提案、ポインタまたはヒントは大歓迎です。

ありがとう、

アシャ

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

java - Javaでファイルを開く前にWindowsプロセスが終了するのを待つ方法

特定のディレクトリで新しいファイルを受信した場合に通知するリスナーを実装しました。これは、TimerTaskをポーリングして使用することで実装されます。これで、プログラムは、新しいファイルを受信すると、ファイルを開いてそれが正しいファイルであるかどうかを検証する別のJavaプログラムを呼び出すように設定されました。私の問題は、ポーリングが指定された秒数後に行われるため、ファイルがそのディレクトリにコピーされ、ウィンドウによってロックされる場合が発生する可能性があることです。

検証のためにそれを開こうとする他のJavaプログラムはIOExceptionをスローできません(「ファイルは別のプロセスによって使用されています」)。

Windowsがいつコピーを終了したかを知り、2番目のプログラムを呼び出してJavaから検証を行う方法はありますか?

誰かが助けるためにコードスニペットを必要とするなら、私は喜んでコードスニペットを投稿します。

ありがとう