| OLD | NEW |
| 1 // sigslot.h: Signal/Slot classes | 1 // sigslot.h: Signal/Slot classes |
| 2 // | 2 // |
| 3 // Written by Sarah Thompson (sarah@telergy.com) 2002. | 3 // Written by Sarah Thompson (sarah@telergy.com) 2002. |
| 4 // | 4 // |
| 5 // License: Public domain. You are free to use this code however you like, with
the proviso that | 5 // License: Public domain. You are free to use this code however you like, with
the proviso that |
| 6 // the author takes on no responsibility or liability for any use. | 6 // the author takes on no responsibility or liability for any use. |
| 7 // | 7 // |
| 8 // QUICK DOCUMENTATION | 8 // QUICK DOCUMENTATION |
| 9 // | 9 // |
| 10 // (see also the full documentation at http://sigsl
ot.sourceforge.net/) | 10 // (see also the full documentation at http://sigsl
ot.sourceforge.net/) |
| (...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 209 pthread_mutex_unlock(get_mutex()); | 209 pthread_mutex_unlock(get_mutex()); |
| 210 } | 210 } |
| 211 | 211 |
| 212 private: | 212 private: |
| 213 static pthread_mutex_t* get_mutex(); | 213 static pthread_mutex_t* get_mutex(); |
| 214 }; | 214 }; |
| 215 | 215 |
| 216 class multi_threaded_local | 216 class multi_threaded_local |
| 217 { | 217 { |
| 218 public: | 218 public: |
| 219 » » multi_threaded_local() | 219 » » multi_threaded_local() { pthread_mutex_init(&m_mutex, nullptr);
} |
| 220 » » { | 220 » » multi_threaded_local(const multi_threaded_local&) { |
| 221 » » » pthread_mutex_init(&m_mutex, NULL); | 221 » » » pthread_mutex_init(&m_mutex, nullptr); |
| 222 » » } | |
| 223 » » multi_threaded_local(const multi_threaded_local&) | |
| 224 » » { | |
| 225 » » » pthread_mutex_init(&m_mutex, NULL); | |
| 226 } | 222 } |
| 227 ~multi_threaded_local() | 223 ~multi_threaded_local() |
| 228 { | 224 { |
| 229 pthread_mutex_destroy(&m_mutex); | 225 pthread_mutex_destroy(&m_mutex); |
| 230 } | 226 } |
| 231 void lock() | 227 void lock() |
| 232 { | 228 { |
| 233 pthread_mutex_lock(&m_mutex); | 229 pthread_mutex_lock(&m_mutex); |
| 234 } | 230 } |
| 235 void unlock() | 231 void unlock() |
| (...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 655 | 651 |
| 656 template<typename A1, typename A2, typename A3, typename A4, typename A5
, typename A6, typename A7, typename mt_policy = SIGSLOT_DEFAULT_MT_POLICY> | 652 template<typename A1, typename A2, typename A3, typename A4, typename A5
, typename A6, typename A7, typename mt_policy = SIGSLOT_DEFAULT_MT_POLICY> |
| 657 using signal7 = signal_with_thread_policy<mt_policy, A1, A2, A3, A4, A5,
A6, A7>; | 653 using signal7 = signal_with_thread_policy<mt_policy, A1, A2, A3, A4, A5,
A6, A7>; |
| 658 | 654 |
| 659 template<typename A1, typename A2, typename A3, typename A4, typename A5
, typename A6, typename A7, typename A8, typename mt_policy = SIGSLOT_DEFAULT_MT
_POLICY> | 655 template<typename A1, typename A2, typename A3, typename A4, typename A5
, typename A6, typename A7, typename A8, typename mt_policy = SIGSLOT_DEFAULT_MT
_POLICY> |
| 660 using signal8 = signal_with_thread_policy<mt_policy, A1, A2, A3, A4, A5,
A6, A7, A8>; | 656 using signal8 = signal_with_thread_policy<mt_policy, A1, A2, A3, A4, A5,
A6, A7, A8>; |
| 661 | 657 |
| 662 } // namespace sigslot | 658 } // namespace sigslot |
| 663 | 659 |
| 664 #endif // WEBRTC_BASE_SIGSLOT_H__ | 660 #endif // WEBRTC_BASE_SIGSLOT_H__ |
| OLD | NEW |