Akurasi Vs. Presisi
Apa yang ingin saya ketahui adalah apakah saya harus menggunakan System.currentTimeMillis () atau System.nanoTime () ketika memperbarui posisi objek saya di game saya? Perubahan gerakan mereka berbanding lurus dengan waktu yang telah berlalu sejak panggilan terakhir dan saya ingin setepat mungkin.
Saya telah membaca bahwa ada beberapa masalah resolusi waktu yang serius antara sistem operasi yang berbeda (yaitu bahwa Mac / Linux memiliki resolusi hampir 1 ms sementara Windows memiliki resolusi 50 ms ??). Saya terutama menjalankan aplikasi saya di windows dan resolusi 50ms tampaknya cukup tidak akurat.
Apakah ada opsi yang lebih baik daripada dua yang saya daftarkan?
Ada saran / komentar?
System.currentTimeMillis()
: pzemtsov.github.io/2017/07/23/the-slow-currenttimemillis.html
nanoTime
secara signifikan biasanya lebih akurat daripada currentTimeMillis tetapi ini adalah panggilan yang relatif mahal juga.currentTimeMillis()
berjalan dalam beberapa (5-6) jam cpu, nanoTime tergantung pada arsitektur yang mendasarinya dan bisa 100 jam cpu.