Re: [資料] 神之物件 (God object, Blob AntiPattern)
※ 引述《H45 (!H45)》之銘言:
: 個人的看法是「一致就是簡單,視情況而定就是複雜。」
: constructor/destructor 要做什麼事情是非常直觀的
: 而且永遠都一樣的:
: 「建構子永遠只建立本物件初始的屬性。」
: 除了初始化屬性之外,其他的事情都不要做。
大致上認同. (握手)
: 讓 constructor/destructor 來做 Lock/unlock 反而限制了功能
: 事實上在許多例子中並不需要把整個函式都鎖起來
: 著名的 Writer/Reader 問題就是一例。
其實我之前回的時候, LockGuard 這特例我就有想起來.
所以我才特意寫了 "沒有很強的原因而妄顧本身設計的目的"
的一句.
LockGuard 算是一個很特別的應用.
會用到 LockGuard 最主要的原因是能夠大大減少出問題
的機會. 如果是自己作 explicit lock/unlock 的話, 中途
有一個uncaught exception , 那個 mutex 就沒人會去
unlock 它了.
這個 trick 是我覺得能接受的額外應用, 也沒有其他選擇
可以做到一樣的效果
說到 Readers Writer Lock, 一樣可以寫對應的 LockGuard .
這個反而不是很大的問題.
[43]
Alien
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.22.246.26
→
09/14 20:41, , 1F
09/14 20:41, 1F
→
09/14 20:42, , 2F
09/14 20:42, 2F
推
09/15 00:29, , 3F
09/15 00:29, 3F
討論串 (同標題文章)
OOAD 近期熱門文章
PTT數位生活區 即時熱門文章
0
18