Stay Angry, Stay Foolish
阅读全文
原文链接:
CON55-CPP. Preserve thread safety and liveness when using condition variables
CON54-CPP. Wrap functions that can spuriously wake up in a loop
CON53-CPP. Avoid deadlock by locking in a predefined order
CON52-CPP. Prevent data races when accessing bit-fields from multiple threads
CON50-CPP. Do not destroy a mutex while it is locked
CON51-CPP. Ensure actively held locks are released on exceptional conditions
FIO51-CPP. Close files when they are no longer needed
OOP58-CPP. Copy operations must not mutate the source object
Stay Angry, Stay Foolish.