- 07 Apr, 2015 3 commits
-
-
Dominik Charousset authored
-
Dominik Charousset authored
Store actor IDs in an unordered map protected via RW lock instead of using a non-portable `__thread` variable. Though this is less efficient, the performance overhead is still negligible compared to the overall cost of enabling logging in the first place. Close #258; a more generic `thread_specific_ptr` implementation turned out have too much implementation overhead to be worth the effort.
-
Dominik Charousset authored
-
- 04 Apr, 2015 1 commit
-
-
Dominik Charousset authored
-
- 02 Apr, 2015 3 commits
-
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
- 01 Apr, 2015 1 commit
-
-
Dominik Charousset authored
-
- 26 Mar, 2015 1 commit
-
-
Dominik Charousset authored
Use `atomic<int>` instead of `int` for `local_actor::m_flags`. The atomic uses only relaxed memory ordering, since all flags that are allowed to be read by others never change after an actor has launched. This should produce the same compiler output as before---at least on x86 or any platform with atomic load/store for word sized memory regions---but suppresses false positives from analyser tools such as Thread Sanitizer. Close #255.
-
- 24 Mar, 2015 2 commits
-
-
Matthias Vallentin authored
This has the advantage that it makes each sample independent and one can now easily "slice" profiler log files. For example, if the first half of the execution time is quite different from the second (due to caching or different user input), then one can now use the first half of the log file and the second half independently, which was not possible before because log entries were cumulative.
-
Matthias Vallentin authored
-
- 21 Mar, 2015 1 commit
-
-
Dominik Charousset authored
-
- 20 Mar, 2015 1 commit
-
-
Dominik Charousset authored
-
- 18 Mar, 2015 10 commits
-
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Marian Triebe authored
Instead of `compare_exchange_weak` we use `comare_exchange_strong` on older compilers to prevent race conditions. This bug is present in GCC <= 4.8.2 and Clang <= 3.4.0. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60272 https://llvm.org/bugs/show_bug.cgi?id=18899
-
- 17 Mar, 2015 1 commit
-
-
Dominik Charousset authored
-
- 16 Mar, 2015 1 commit
-
-
Dominik Charousset authored
-
- 13 Mar, 2015 2 commits
-
-
Dominik Charousset authored
-
Dominik Charousset authored
-
- 12 Mar, 2015 4 commits
-
-
Marian Triebe authored
-
Dominik Charousset authored
-
Dominik Charousset authored
-
Dominik Charousset authored
Close #238 by using the new `send_impl` from `sync_send` and `timed_sync_send`.
-
- 11 Mar, 2015 4 commits
-
-
Dominik Charousset authored
-
Joseph Noir authored
-
Dominik Charousset authored
Remove actor policies and `proper_actor`
-
Dominik Charousset authored
The previous approach based on mixins, policies, and the glue-it-all-together `proper_actor` was ok for fast prototyping. The downside of this approach is that stack traces are basically useless, since they are flooded with irrelevant template metaprogramming types. Since CAF has long outgrown the prototyping stage, it was about time to streamline actor classes. This also shortens build times.
-
- 09 Mar, 2015 3 commits
-
-
Joseph Noir authored
-
Dominik Charousset authored
-
Dominik Charousset authored
Close #163
-
- 06 Mar, 2015 2 commits
-
-
Dominik Charousset authored
-
Dominik Charousset authored
-