无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

《游戲編程模式》筆記——對(duì)象池模式

2023-09-23 13:43 作者:黑白色的楓  | 我要投稿

意圖

放棄單獨(dú)地分配和釋放內(nèi)存,從固定的池子中重用對(duì)象,提高性能和內(nèi)存使用率。

模式

定義一個(gè)池對(duì)象,包含一組可重用對(duì)象,初始化時(shí)創(chuàng)建整個(gè)對(duì)象集合。需要新對(duì)象時(shí)就向池子申請(qǐng)一個(gè),使用完后回到池子中。

何時(shí)使用

需要頻繁創(chuàng)建和銷毀對(duì)象。

對(duì)象大小相仿。

在堆上進(jìn)行對(duì)象內(nèi)存分配十分緩慢或者會(huì)導(dǎo)致內(nèi)存碎片。

每個(gè)對(duì)象都封裝了像數(shù)據(jù)庫(kù)或者網(wǎng)絡(luò)連接這樣昂貴又重要的資源。

設(shè)計(jì)決策

對(duì)象和池耦合嗎?

如果對(duì)象與池耦合:

實(shí)現(xiàn)簡(jiǎn)單。

保證對(duì)象只能被對(duì)象池創(chuàng)建。

如果對(duì)象沒有和池耦合:

最大的好處是可以保存多種類型的對(duì)象,可實(shí)現(xiàn)通用的、可重用的對(duì)象池類型。

誰(shuí)負(fù)責(zé)初始化重用對(duì)象?

如果在對(duì)象池的內(nèi)部重新初始化:

對(duì)象池可以完全封裝管理對(duì)象。

可能需要提供用來初始化不同情況下的初始化函數(shù)。

如果外部代碼初始化對(duì)象:

對(duì)象池的接口更簡(jiǎn)單,只需要提供返回新對(duì)象的引用。

外部代碼需要處理無(wú)法創(chuàng)建新對(duì)象的失敗,需要保證代碼安全。


參考

《游戲編程模式》

《游戲編程模式》筆記——對(duì)象池模式的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
唐海县| 谷城县| 西丰县| 高清| 海宁市| 南开区| 正阳县| 凤山市| 休宁县| 宜君县| 黑山县| 钦州市| 沁水县| 鹤岗市| 巴彦县| 蓝山县| 遵化市| 买车| 比如县| 香港| 房山区| 浦江县| 常德市| 金川县| 富顺县| 湖南省| 兴宁市| 黎平县| 剑阁县| 安庆市| 汾阳市| 南昌县| 舒城县| 辉南县| 兴安县| 壤塘县| 望都县| 通道| 新宾| 宁强县| 抚松县|