《游戲編程模式》筆記——雙緩沖模式
什么是雙緩沖模式
雙緩沖模式顧名思義有兩個緩沖實例,一個當(dāng)前緩沖實例,一個下一緩沖實例。
在使用時,使用當(dāng)前緩沖實例,同時生成下一緩沖實例,當(dāng)下一緩沖實例準(zhǔn)備完畢后與當(dāng)前緩沖進(jìn)行交換。
為什么要這么做呢
使用雙緩沖模式,是希望當(dāng)前緩沖一定是一個準(zhǔn)備好的數(shù)據(jù),并且不會再改變,在使用時不必?fù)?dān)心當(dāng)前緩沖因為被外部改變而出現(xiàn)一些異常情況。
注意
交換是需要時間的,這個操作必需是原子級的,通常只是修改指針或者引用,交換時間長于修改時間的話將毫無助益。
我們擁有兩個緩沖,也就是雙倍的內(nèi)存使用,甚至可能更多,這取決與交換時是否重復(fù)使用當(dāng)前狀態(tài),還是創(chuàng)建新的實例。
參考
《游戲編程模式》
標(biāo)簽: