Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
Actor Framework
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
cpp-libs
Actor Framework
Commits
e33b6fa3
Commit
e33b6fa3
authored
Aug 17, 2012
by
Dominik Charousset
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed cleanup of subscriptions for local_actor based actors
parent
96cdb824
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
8 deletions
+6
-8
cppa/detail/abstract_actor.hpp
cppa/detail/abstract_actor.hpp
+6
-8
No files found.
cppa/detail/abstract_actor.hpp
View file @
e33b6fa3
...
@@ -56,7 +56,7 @@ namespace cppa { class self_type; }
...
@@ -56,7 +56,7 @@ namespace cppa { class self_type; }
namespace
cppa
{
namespace
detail
{
namespace
cppa
{
namespace
detail
{
template
<
class
Base
>
template
<
class
Base
,
bool
IsLocalActor
>
class
abstract_actor_base
:
public
Base
{
class
abstract_actor_base
:
public
Base
{
protected:
protected:
...
@@ -68,15 +68,13 @@ class abstract_actor_base : public Base {
...
@@ -68,15 +68,13 @@ class abstract_actor_base : public Base {
};
};
template
<
>
template
<
class
Base
>
class
abstract_actor_base
<
local_actor
>
:
public
local_actor
{
class
abstract_actor_base
<
Base
,
true
>
:
public
Base
{
typedef
local_actor
super
;
protected:
protected:
template
<
typename
...
Args
>
template
<
typename
...
Args
>
abstract_actor_base
(
Args
&&
...
args
)
:
super
(
std
::
forward
<
Args
>
(
args
)...)
{
}
abstract_actor_base
(
Args
&&
...
args
)
:
Base
(
std
::
forward
<
Args
>
(
args
)...)
{
}
inline
void
base_cleanup
(
std
::
uint32_t
)
{
inline
void
base_cleanup
(
std
::
uint32_t
)
{
// leave groups
// leave groups
...
@@ -91,11 +89,11 @@ class abstract_actor_base<local_actor> : public local_actor {
...
@@ -91,11 +89,11 @@ class abstract_actor_base<local_actor> : public local_actor {
* or {@link cppa::local_actor local_actor}.
* or {@link cppa::local_actor local_actor}.
*/
*/
template
<
class
Base
>
template
<
class
Base
>
class
abstract_actor
:
public
abstract_actor_base
<
Base
>
{
class
abstract_actor
:
public
abstract_actor_base
<
Base
,
std
::
is_base_of
<
local_actor
,
Base
>::
value
>
{
friend
class
self_type
;
friend
class
self_type
;
typedef
abstract_actor_base
<
Base
>
super
;
typedef
abstract_actor_base
<
Base
,
std
::
is_base_of
<
local_actor
,
Base
>::
value
>
super
;
typedef
std
::
lock_guard
<
std
::
mutex
>
guard_type
;
typedef
std
::
lock_guard
<
std
::
mutex
>
guard_type
;
typedef
std
::
unique_ptr
<
attachable
>
attachable_ptr
;
typedef
std
::
unique_ptr
<
attachable
>
attachable_ptr
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment