問題タブ [system-clock]
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.
windows - プログラムで Windows システム時刻を頻繁に変更することの欠点
暗号化されたデータをテキスト ファイルに書き込むシミュレータ アプリケーションがあります。それが書き込む情報には、タイムスタンプ (アプリケーションがシステム時間から選択するもの) も含まれていますが、私にはわかりません。アプリケーションからテキスト ファイルにランダム データを送信するこのタスク全体を自動化しましたが、レコードは一定の時間間隔で書き込まれる必要があります。
このために、自動化スクリプトに遅延を設定するか、新しいレコードが挿入されるたびにシステム時間を変更できます。
2 番目のアプローチを採用した場合、つまり、プログラムによってシステム時間を非常に頻繁に (1 秒に 1 回程度) 変更した場合、このアプリケーションを実行している Windows システムに悪影響を及ぼしますか? 他の重要なシステム プロセスは影響を受けますか? このアプローチは賢明ですか?
android - 日付付きデジタル時計
日付と時刻を表示したい。時間はデジタル時計を使っています。完全に問題ありません。しかし、時計で日付を表示する方法は? 日付が実際に変更された場合、私のページの日付も更新されますか? 時間はデジタル時計を使っています。
android - SystemClock.uptimeMillis() はどのようにラップできますか?
uptimeMillis() に関する Android ドキュメントには次のように書かれています。
ディープ スリープで費やされた時間をカウントせずに、起動からのミリ秒を返します。注: この値はときどきリセットされることがあります (それ以外の場合はラップアラウンドする前に)。
ドキュメントがこれまでにラップアラウンドすることを心配しているのは非常に奇妙に思えます. 結局、メソッドは long を返します。簡単に計算すると、ラップするのに約292,271,023年かかることがわかります!!!
それで、ドキュメントはどうなっていますか?ラップすることは本当に可能ですか?長い間、最大値に達する前に値が折り返される可能性はありますか? それはドキュメントが実際に言おうとしていることですか?もしそうなら、いつラップされますか?
[ System.currentTimeMillis()もエポックからの時間を表す long であるため、特に不可解です。しかし、Android は値のラッピングの可能性についてまったく言及していません。0 から始まる uptimeMillis の場合はなおさらです...]
windows-xp - 組み込み XP でのクロック ドリフト
バックアップ イメージからインストールされた Windows XP Embedded をマシンで使用しています。最近、自分のマシンでシステム クロックのドリフトが検出されました。このドリフトは非常に大きい (5 分ごとに 1 秒)。このドリフトは永続的なものではなく、起動するたびにランダムに発生します。ただし、ユニットがドリフトして起動すると、次の起動までそのままになります。もう 1 つの重要なことは、起動時にユニットが毎回 0 遅延で開始することです。たとえば、次のようになります。
- ユニットの起動。
- ワールドタイムは 12:00:00.00、単位時間は 12:00:00.00 です。
- 10分間待ちます。
- ワールドタイムは 12:10:00.00、単位時間は 12:09:58.00 です。
- ユニットの電源を切る
- ユニットの起動。
- ワールドタイムは 12:15:00.00、単位時間は 12:15:00.00 です。
時計を同期できません。
通常のXP(組み込みなし)をインストールしましたが、ドリフトは発生しませんでした。問題の根本原因を特定する方法と、Embedded XP でそれを解決する方法について誰か助けてもらえますか?
iphone - iPhoneのステータスバーに別の時計を追加することは可能ですか?
iPhoneのステータスバーに2回表示できるジェイルブレイクアプリ/ツイークまたは通常のアプリを作成することは可能ですか?そのようなことは可能ですか、および/またはそれはすでに開発されていますか?
私には他の国にとても特別な友達がいて、いつそこにいるのか忘れてしまうことがあります。時計アプリで時刻を確認しなければならないのは、特に電話で話しているときは苦痛です。単純な時計が多くのシステムリソースを使用できるとは想像できません。
sql-server - PC の日付を変更すると ODBC が失敗する
レポートを正常に実行し、PC で日付を変更し、レポートを再試行して接続失敗エラーが発生した女の子がここにいます。
- レポートは MS Access 2003 で実行されます
- ODBC 自体は Windows 認証を使用します。
- リンクされたテーブルは、彼女の Windows ログインとは異なる UID を使用しています
- レポート実行時のエラー: SQLState '28000' SQL Server Error: 18452 "[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user ''. The user is not associated with a trusted SQL Server connection."
- ODBC のテスト中にエラーが発生しました: SQLState '08004' SQL Server エラー: 4060 "サーバーが接続を拒否しました。選択したデータベースへのアクセスが拒否されました。"
- SQL ログに次のエラーがありました。
- マシンで障害を再現できます。
Windows認証/Active Directory/ODBCの間の何かだと思っていますが、最初の2つはあまり経験がありません.
はい、これが理想的な状況ではないことはわかっています。これはすべて、ある時点で C#.NET に変換されます。
どんなアイデアでもTIA。
java - テキストベースのゲーム(Java)での時間の処理
私はJavaを学んでいるので、基本的なテキストベースのゲームを作り上げようとしています。特定のイベントのペースを管理する手段として、ゲーム内のラウンドをカウントできるようにしたいと思います。たとえば、部屋の変更はラウンドごとに1回に制限できます(テストコードでは1秒)。小さなクリーチャーはより高い割合で部屋を攻撃または変更する可能性がありますが、大きなクリーチャーはより厄介になる可能性があります。これまでのところ良いですか?素晴らしい。
それで、私はこれを作り上げて、whileループがプレーヤーがコマンドを入力するのを待つたびにブロックにぶつかることにすぐに気づきました。コード:
だから、ここに私の質問があります:
別の方法を使用して、whileループと同時にプレーヤーにコマンドプロンプトを表示する時間/ラウンドをログに記録する方法はありますか?
そうでない場合、これを私がまだ見ていない/実践していない問題ではないようにする別の方法はありますか?
android - Android携帯の時計のダニ
私たちは、リアルタイムに依存する分散システムデータベースの同期に取り組んでいます。
デバイスの時刻はユーザーまたは障害のあるネットワークによって変更される可能性があるため、データベース全体が非常に簡単に破損する可能性があります。そこで、マスターサーバーから時刻を取得して保存し、クロックティック数をカウントして経過した時間間隔を計算することでリアルタイムを計算することにしました。ハードウェアのクロックティックにアクセスするにはどうすればよいですか。そして、これのためにいくつかのサービスを実行する必要がありますか?デバイスがスタンバイ/スリープ/スイッチオフのときでも、ティックをカウントする必要があります。表示される実際の時計のように。マスターサーバーだけが時刻を設定できるようにするために、一種の並列クロックにしたいのです。
java - フリーランニングのシステムクロックに依存しないクロックに基づいてスレッドをパークする方法はありますか?
指定されたタイムアウトのために現在のスレッドをパークするには、次を使用できます。
また
残念ながら、この 2 つの方法の内部ティックはすべてシステム クロックに基づいています。
待機中にシステム クロックが (ntptime または手動で) 変更された場合、これらのメソッドは期待どおりに動作しません。
たとえば、t0 では、Thread.sleep(dt) のようにこのメソッドを呼び出して、dt 秒スリープします。待機期間中、システムクロックを 20 秒進めると、スレッドは実際には dt+20 秒間スリープします。
次のコードを使用して確認します。
「date && sudo date -s 16:10:40」のようなものを使用して、待機中にシステムクロックを数分間進めます。出力から何が起こったのかがわかります。
悲しいことに、私の製品では多くのことがシステム クロックに基づいているため、
ソケット接続を介したハートビート チェッカーのスケジューラ (LockSupport.park を最後に呼び出す) など。
システム クロックがタイムアウトよりも長く設定された場合、スケジューラはタイムアウトと見なしますが、実際にはそうではありません。
誰もが同じ問題に遭遇し、どのように解決しますか?
編集:
私の HA 製品では、重い負荷がシステムをブロックしているときに Watchdog を使用して OS を強制終了します (いわゆる自殺戦略)。望まない自殺を防ぐために犬に餌をやる必要があります,ThreadSupport.parkNanos(xxx) を使用すると予期しない自殺が発生します