Android 角色时间戳
? ? ? ? 我是在用MediaRecorder進行錄像時發生視頻和音頻不同步的問題,請教了一些人后感覺應該是沒有時間戳,之前一直覺得時間戳就是給用戶看的一個數據,查了一下發現不是的,以下是轉載的。希望對大家實用:
首先向大家介紹什么是時間戳。
???說得通俗一些,時間戳就是根據當前系統時間生成的一組隨機數字。
時間戳一般作為對數據唯一性的一種推斷根據。接下來向大家介紹一下我們能夠怎樣運用時間戳。
???我們一定會碰到這種情況:銀行A與銀行B差點兒同一時候打開你的賬戶并看到你的賬戶上原有1000元存款。然后兩家銀行都想在你的賬戶上加上500元存款。那么。銀行A便將1000元改成1500元,同一時候。銀行B也將1000元改成了1500元。這樣就糟糕了!
最后,你的銀行賬戶上最后僅僅有1500元而不是理應的2000元,等于白白損失了500元!
這就是在沒有鎖定數據的情況下改動造成的嚴重問題。
然而,我們能夠通過時間戳來巧妙解決問題。
???我們來看思路:
???這樣做會帶來什么優點呢?
???我們再來看一開始的那個情況:銀行A與銀行B差點兒同一時候打開你的賬戶并看到你的賬戶上原有1000元存款,與此同一時候兩個銀行業同一時候讀取了時間戳123456,接下來就有差別了。當銀行A把1000元改成1500元后,存盤,系統將對照先前的時間戳123456是否與存盤時表中的時間戳一致。顯然。如今應該是一致的,那么同意存盤,并生成新的時間戳456789替換了舊的時間戳123456。
接下去,B銀行也將1000元改動成了1500元,存盤,系統對照先前的時間戳123456是否與存盤時表中的時間戳一致,發現先前的時間戳123456已經與如今的時間戳456789相異。系統拒絕存盤,要求刷新數據,那么數據刷新之后1000元已經由于之前A銀行存入了500元而成為了1500元。那么B銀行就會在1500元的基礎上改為2000元,再次存盤,系統同意。這樣,我們就避免了反復改動數據所帶來的錯誤。
???有些像繞口令,我希望我們都清楚我是什么意思~
總結
以上是生活随笔為你收集整理的Android 角色时间戳的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.3.2 java程序的运行机制和jv
- 下一篇: Android 获取 屏幕状态栏高度和标