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
52914200
Unverified
Commit
52914200
authored
Aug 04, 2021
by
Dominik Charousset
Committed by
GitHub
Aug 04, 2021
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1289
Fix typos
parents
5b3704c6
8c7849c6
Changes
23
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
30 additions
and
30 deletions
+30
-30
examples/caf-application.conf
examples/caf-application.conf
+1
-1
libcaf_core/caf/detail/meta_object.hpp
libcaf_core/caf/detail/meta_object.hpp
+1
-1
libcaf_core/caf/downstream_manager.hpp
libcaf_core/caf/downstream_manager.hpp
+1
-1
libcaf_core/caf/downstream_manager_base.hpp
libcaf_core/caf/downstream_manager_base.hpp
+1
-1
libcaf_core/caf/exit_reason.hpp
libcaf_core/caf/exit_reason.hpp
+1
-1
libcaf_core/caf/extend.hpp
libcaf_core/caf/extend.hpp
+2
-2
libcaf_core/caf/scheduler/coordinator.hpp
libcaf_core/caf/scheduler/coordinator.hpp
+1
-1
libcaf_core/caf/telemetry/metric_registry.hpp
libcaf_core/caf/telemetry/metric_registry.hpp
+1
-1
libcaf_core/caf/variant.hpp
libcaf_core/caf/variant.hpp
+1
-1
libcaf_core/src/default_attachable.cpp
libcaf_core/src/default_attachable.cpp
+2
-2
libcaf_core/src/stream_aborter.cpp
libcaf_core/src/stream_aborter.cpp
+2
-2
libcaf_core/test/pipeline_streaming.cpp
libcaf_core/test/pipeline_streaming.cpp
+1
-1
libcaf_core/test/selective_streaming.cpp
libcaf_core/test/selective_streaming.cpp
+1
-1
libcaf_core/test/string_algorithms.cpp
libcaf_core/test/string_algorithms.cpp
+1
-1
libcaf_io/caf/io/broker_servant.hpp
libcaf_io/caf/io/broker_servant.hpp
+2
-2
libcaf_io/caf/io/network/datagram_manager.hpp
libcaf_io/caf/io/network/datagram_manager.hpp
+1
-1
libcaf_io/caf/io/network/multiplexer.hpp
libcaf_io/caf/io/network/multiplexer.hpp
+1
-1
libcaf_io/caf/io/network/receive_buffer.hpp
libcaf_io/caf/io/network/receive_buffer.hpp
+1
-1
libcaf_io/src/io/network/default_multiplexer.cpp
libcaf_io/src/io/network/default_multiplexer.cpp
+1
-1
manual/ConfiguringActorApplications.rst
manual/ConfiguringActorApplications.rst
+2
-2
manual/Error.rst
manual/Error.rst
+1
-1
manual/Metrics.rst
manual/Metrics.rst
+1
-1
tools/caf-vec.cpp
tools/caf-vec.cpp
+3
-3
No files found.
examples/caf-application.conf
View file @
52914200
...
@@ -12,7 +12,7 @@ caf {
...
@@ -12,7 +12,7 @@ caf {
# # Maximum number of threads for the scheduler. No hardcoded default.
# # Maximum number of threads for the scheduler. No hardcoded default.
# max-threads = ... (detected at runtime)
# max-threads = ... (detected at runtime)
}
}
# Prameters for the work stealing scheduler. Only takes effect if
# P
a
rameters for the work stealing scheduler. Only takes effect if
# caf.scheduler.policy is set to "stealing".
# caf.scheduler.policy is set to "stealing".
work
-
stealing
{
work
-
stealing
{
# Number of zero-sleep-interval polling attempts.
# Number of zero-sleep-interval polling attempts.
...
...
libcaf_core/caf/detail/meta_object.hpp
View file @
52914200
...
@@ -61,7 +61,7 @@ using global_meta_objects_guard_type = intrusive_ptr<ref_counted>;
...
@@ -61,7 +61,7 @@ using global_meta_objects_guard_type = intrusive_ptr<ref_counted>;
CAF_CORE_EXPORT
global_meta_objects_guard_type
global_meta_objects_guard
();
CAF_CORE_EXPORT
global_meta_objects_guard_type
global_meta_objects_guard
();
/// Returns the global storage for all meta objects. The ::type_id of an object
/// Returns the global storage for all meta objects. The ::type_id of an object
/// is the index for accessing the corresonding meta object.
/// is the index for accessing the corres
p
onding meta object.
CAF_CORE_EXPORT
span
<
const
meta_object
>
global_meta_objects
();
CAF_CORE_EXPORT
span
<
const
meta_object
>
global_meta_objects
();
/// Returns the global meta object for given type ID.
/// Returns the global meta object for given type ID.
...
...
libcaf_core/caf/downstream_manager.hpp
View file @
52914200
...
@@ -19,7 +19,7 @@ namespace caf {
...
@@ -19,7 +19,7 @@ namespace caf {
/// manager owns the `outbound_path` objects, has a buffer for storing pending
/// manager owns the `outbound_path` objects, has a buffer for storing pending
/// output and is responsible for the dispatching policy (broadcasting, for
/// output and is responsible for the dispatching policy (broadcasting, for
/// example). The default implementation terminates the stream and never
/// example). The default implementation terminates the stream and never
/// accepts any pa
ht
s.
/// accepts any pa
th
s.
class
CAF_CORE_EXPORT
downstream_manager
{
class
CAF_CORE_EXPORT
downstream_manager
{
public:
public:
// -- member types -----------------------------------------------------------
// -- member types -----------------------------------------------------------
...
...
libcaf_core/caf/downstream_manager_base.hpp
View file @
52914200
...
@@ -17,7 +17,7 @@
...
@@ -17,7 +17,7 @@
namespace
caf
{
namespace
caf
{
/// The default downstream manager base stores outbound paths in an unordered
/// The default downstream manager base stores outbound paths in an unordered
/// map. It always takes ownership of the pa
ht
s by using unique pointers.
/// map. It always takes ownership of the pa
th
s by using unique pointers.
class
CAF_CORE_EXPORT
downstream_manager_base
:
public
downstream_manager
{
class
CAF_CORE_EXPORT
downstream_manager_base
:
public
downstream_manager
{
public:
public:
// -- member types -----------------------------------------------------------
// -- member types -----------------------------------------------------------
...
...
libcaf_core/caf/exit_reason.hpp
View file @
52914200
...
@@ -35,7 +35,7 @@ enum class exit_reason : uint8_t {
...
@@ -35,7 +35,7 @@ enum class exit_reason : uint8_t {
user_shutdown
,
user_shutdown
,
/// Indicates that an actor was killed unconditionally.
/// Indicates that an actor was killed unconditionally.
kill
,
kill
,
/// Indicates that an actor finish
i
ed execution because a connection
/// Indicates that an actor finished execution because a connection
/// to a remote link was closed unexpectedly.
/// to a remote link was closed unexpectedly.
remote_link_unreachable
,
remote_link_unreachable
,
/// Indicates that an actor was killed because it became unreachable.
/// Indicates that an actor was killed because it became unreachable.
...
...
libcaf_core/caf/extend.hpp
View file @
52914200
...
@@ -25,8 +25,8 @@ struct extend_helper<D, B, M, Ms...> : extend_helper<D, M<B, D>, Ms...> {
...
@@ -25,8 +25,8 @@ struct extend_helper<D, B, M, Ms...> : extend_helper<D, M<B, D>, Ms...> {
}
// namespace detail
}
// namespace detail
/// Allows convenient definition of types using mixins.
/// Allows convenient definition of types using mixins.
/// For example, `extend<
ar, T>::with<ob, fo
>` is an alias for
/// For example, `extend<
one, T>::with<two, three
>` is an alias for
/// `
fo<ob<ar
, T>, T>`.
/// `
three<two<one
, T>, T>`.
///
///
/// Mixins always have two template parameters: base type and
/// Mixins always have two template parameters: base type and
/// derived type. This allows mixins to make use of the curiously recurring
/// derived type. This allows mixins to make use of the curiously recurring
...
...
libcaf_core/caf/scheduler/coordinator.hpp
View file @
52914200
...
@@ -51,7 +51,7 @@ protected:
...
@@ -51,7 +51,7 @@ protected:
// Prepare workers vector.
// Prepare workers vector.
auto
num
=
num_workers
();
auto
num
=
num_workers
();
workers_
.
reserve
(
num
);
workers_
.
reserve
(
num
);
// Create worker instanes.
// Create worker instan
c
es.
for
(
size_t
i
=
0
;
i
<
num
;
++
i
)
for
(
size_t
i
=
0
;
i
<
num
;
++
i
)
workers_
.
emplace_back
(
workers_
.
emplace_back
(
std
::
make_unique
<
worker_type
>
(
i
,
this
,
init
,
max_throughput_
));
std
::
make_unique
<
worker_type
>
(
i
,
this
,
init
,
max_throughput_
));
...
...
libcaf_core/caf/telemetry/metric_registry.hpp
View file @
52914200
...
@@ -28,7 +28,7 @@ public:
...
@@ -28,7 +28,7 @@ public:
// -- member types -----------------------------------------------------------
// -- member types -----------------------------------------------------------
/// Forces the compiler to use the type `span<const T>` instead of trying to
/// Forces the compiler to use the type `span<const T>` instead of trying to
/// match par
e
meters to a `span`.
/// match par
a
meters to a `span`.
template
<
class
T
>
template
<
class
T
>
struct
span_type
{
struct
span_type
{
using
type
=
span
<
const
T
>
;
using
type
=
span
<
const
T
>
;
...
...
libcaf_core/caf/variant.hpp
View file @
52914200
...
@@ -120,7 +120,7 @@ public:
...
@@ -120,7 +120,7 @@ public:
/// Stores whether all types are nothrow assignable *and* constructible. We
/// Stores whether all types are nothrow assignable *and* constructible. We
/// need to check both, since assigning to a variant results in a
/// need to check both, since assigning to a variant results in a
/// move-contruct unless the before and after types are the same.
/// move-con
s
truct unless the before and after types are the same.
static
constexpr
bool
nothrow_move_assign
=
static
constexpr
bool
nothrow_move_assign
=
nothrow_move_construct
nothrow_move_construct
&&
detail
::
conjunction
<
&&
detail
::
conjunction
<
...
...
libcaf_core/src/default_attachable.cpp
View file @
52914200
...
@@ -34,8 +34,8 @@ void default_attachable::actor_exited(const error& rsn, execution_unit* host) {
...
@@ -34,8 +34,8 @@ void default_attachable::actor_exited(const error& rsn, execution_unit* host) {
bool
default_attachable
::
matches
(
const
token
&
what
)
{
bool
default_attachable
::
matches
(
const
token
&
what
)
{
if
(
what
.
subtype
!=
attachable
::
token
::
observer
)
if
(
what
.
subtype
!=
attachable
::
token
::
observer
)
return
false
;
return
false
;
auto
&
ot
=
*
reinterpret_cast
<
const
observe_token
*>
(
what
.
ptr
);
auto
&
ref
=
*
reinterpret_cast
<
const
observe_token
*>
(
what
.
ptr
);
return
ot
.
observer
==
observer_
&&
ot
.
type
==
type_
;
return
ref
.
observer
==
observer_
&&
ref
.
type
==
type_
;
}
}
default_attachable
::
default_attachable
(
actor_addr
observed
,
actor_addr
observer
,
default_attachable
::
default_attachable
(
actor_addr
observed
,
actor_addr
observer
,
...
...
libcaf_core/src/stream_aborter.cpp
View file @
52914200
...
@@ -41,8 +41,8 @@ void stream_aborter::actor_exited(const error& rsn, execution_unit* host) {
...
@@ -41,8 +41,8 @@ void stream_aborter::actor_exited(const error& rsn, execution_unit* host) {
bool
stream_aborter
::
matches
(
const
attachable
::
token
&
what
)
{
bool
stream_aborter
::
matches
(
const
attachable
::
token
&
what
)
{
if
(
what
.
subtype
!=
attachable
::
token
::
stream_aborter
)
if
(
what
.
subtype
!=
attachable
::
token
::
stream_aborter
)
return
false
;
return
false
;
auto
&
ot
=
*
reinterpret_cast
<
const
token
*>
(
what
.
ptr
);
auto
&
ref
=
*
reinterpret_cast
<
const
token
*>
(
what
.
ptr
);
return
ot
.
observer
==
observer_
&&
ot
.
slot
==
slot_
;
return
ref
.
observer
==
observer_
&&
ref
.
slot
==
slot_
;
}
}
stream_aborter
::
stream_aborter
(
actor_addr
&&
observed
,
actor_addr
&&
observer
,
stream_aborter
::
stream_aborter
(
actor_addr
&&
observed
,
actor_addr
&&
observer
,
...
...
libcaf_core/test/pipeline_streaming.cpp
View file @
52914200
...
@@ -359,7 +359,7 @@ CAF_TEST(depth_2_pipeline_error_at_source) {
...
@@ -359,7 +359,7 @@ CAF_TEST(depth_2_pipeline_error_at_source) {
CAF_CHECK_EQUAL
(
deref
<
sum_up_actor
>
(
snk
).
state
.
fin_called
,
1
);
CAF_CHECK_EQUAL
(
deref
<
sum_up_actor
>
(
snk
).
state
.
fin_called
,
1
);
}
}
CAF_TEST
(
depth_2_pipelin_error_at_sink
)
{
CAF_TEST
(
depth_2_pipelin
e
_error_at_sink
)
{
CAF_MESSAGE
(
"streams must abort if a sink fails at runtime"
);
CAF_MESSAGE
(
"streams must abort if a sink fails at runtime"
);
auto
src
=
sys
.
spawn
(
file_reader
,
500u
);
auto
src
=
sys
.
spawn
(
file_reader
,
500u
);
auto
snk
=
sys
.
spawn
(
sum_up
);
auto
snk
=
sys
.
spawn
(
sum_up
);
...
...
libcaf_core/test/selective_streaming.cpp
View file @
52914200
...
@@ -41,7 +41,7 @@ buf make_log(level lvl) {
...
@@ -41,7 +41,7 @@ buf make_log(level lvl) {
buf
result
{{
level
::
trace
,
"trace1"
},
buf
result
{{
level
::
trace
,
"trace1"
},
{
level
::
trace
,
"trace2"
},
{
level
::
trace
,
"trace2"
},
{
level
::
debug
,
"debug1"
},
{
level
::
debug
,
"debug1"
},
{
level
::
error
,
"err
ro
1"
},
{
level
::
error
,
"err
or
1"
},
{
level
::
trace
,
"trace3"
}};
{
level
::
trace
,
"trace3"
}};
auto
predicate
=
[
=
](
const
value_type
&
x
)
{
return
!
select
::
apply
(
lvl
,
x
);
};
auto
predicate
=
[
=
](
const
value_type
&
x
)
{
return
!
select
::
apply
(
lvl
,
x
);
};
auto
e
=
result
.
end
();
auto
e
=
result
.
end
();
...
...
libcaf_core/test/string_algorithms.cpp
View file @
52914200
...
@@ -65,7 +65,7 @@ CAF_TEST(joining) {
...
@@ -65,7 +65,7 @@ CAF_TEST(joining) {
CAF_TEST
(
starts
with
)
{
CAF_TEST
(
starts
with
)
{
CAF_CHECK
(
starts_with
(
"foobar"
,
"f"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"f"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"fo"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"fo
o
"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"fooba"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"fooba"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"foobar"
));
CAF_CHECK
(
starts_with
(
"foobar"
,
"foobar"
));
CAF_CHECK
(
!
starts_with
(
"foobar"
,
"o"
));
CAF_CHECK
(
!
starts_with
(
"foobar"
,
"o"
));
...
...
libcaf_io/caf/io/broker_servant.hpp
View file @
52914200
...
@@ -83,7 +83,7 @@ protected:
...
@@ -83,7 +83,7 @@ protected:
return
false
;
return
false
;
// tell broker it entered passive mode, this can result in
// tell broker it entered passive mode, this can result in
// producing, why we check the condition again afterwards
// producing, why we check the condition again afterwards
using
passiv_t
=
typename
std
::
conditional
<
using
passiv
e
_t
=
typename
std
::
conditional
<
std
::
is_same
<
handle_type
,
connection_handle
>::
value
,
std
::
is_same
<
handle_type
,
connection_handle
>::
value
,
connection_passivated_msg
,
connection_passivated_msg
,
typename
std
::
conditional
<
typename
std
::
conditional
<
...
@@ -92,7 +92,7 @@ protected:
...
@@ -92,7 +92,7 @@ protected:
datagram_servant_passivated_msg
>::
type
>::
type
;
datagram_servant_passivated_msg
>::
type
>::
type
;
mailbox_element
tmp
{
strong_actor_ptr
{},
make_message_id
(),
mailbox_element
tmp
{
strong_actor_ptr
{},
make_message_id
(),
mailbox_element
::
forwarding_stack
{},
mailbox_element
::
forwarding_stack
{},
make_message
(
passiv_t
{
hdl
()})};
make_message
(
passiv
e
_t
{
hdl
()})};
invoke_mailbox_element_impl
(
ctx
,
tmp
);
invoke_mailbox_element_impl
(
ctx
,
tmp
);
return
activity_tokens_
!=
size_t
{
0
};
return
activity_tokens_
!=
size_t
{
0
};
}
}
...
...
libcaf_io/caf/io/network/datagram_manager.hpp
View file @
52914200
...
@@ -30,7 +30,7 @@ public:
...
@@ -30,7 +30,7 @@ public:
/// Called by the underlying I/O device to indicate that a new remote
/// Called by the underlying I/O device to indicate that a new remote
/// endpoint has been detected, passing in the received datagram.
/// endpoint has been detected, passing in the received datagram.
/// @returns `true` if the manager accepts further enpoints,
/// @returns `true` if the manager accepts further en
d
points,
/// otherwise `false`.
/// otherwise `false`.
virtual
bool
new_endpoint
(
receive_buffer
&
buf
)
=
0
;
virtual
bool
new_endpoint
(
receive_buffer
&
buf
)
=
0
;
...
...
libcaf_io/caf/io/network/multiplexer.hpp
View file @
52914200
...
@@ -82,7 +82,7 @@ public:
...
@@ -82,7 +82,7 @@ public:
void
intrusive_ptr_release_impl
()
override
;
void
intrusive_ptr_release_impl
()
override
;
};
};
/// Makes sure the multipler does not exit its event loop until
/// Makes sure the multipl
i
er does not exit its event loop until
/// the destructor of `supervisor` has been called.
/// the destructor of `supervisor` has been called.
class
CAF_IO_EXPORT
supervisor
{
class
CAF_IO_EXPORT
supervisor
{
public:
public:
...
...
libcaf_io/caf/io/network/receive_buffer.hpp
View file @
52914200
...
@@ -182,7 +182,7 @@ public:
...
@@ -182,7 +182,7 @@ public:
void
push_back
(
value_type
value
);
void
push_back
(
value_type
value
);
private:
private:
// Increse the buffer capacity, maintaining its data. May invalidate
// Incre
a
se the buffer capacity, maintaining its data. May invalidate
// iterators.
// iterators.
void
increase_by
(
size_t
bytes
);
void
increase_by
(
size_t
bytes
);
...
...
libcaf_io/src/io/network/default_multiplexer.cpp
View file @
52914200
...
@@ -589,7 +589,7 @@ bool default_multiplexer::poll_once(bool block) {
...
@@ -589,7 +589,7 @@ bool default_multiplexer::poll_once(bool block) {
for
(
auto
&
ptr
:
xs
)
for
(
auto
&
ptr
:
xs
)
resume
(
std
::
move
(
ptr
));
resume
(
std
::
move
(
ptr
));
handle_internal_events
();
handle_internal_events
();
// Try to swap back to internall_posted_ to re-use allocated memory.
// Try to swap back to internall
y
_posted_ to re-use allocated memory.
if
(
internally_posted_
.
empty
())
{
if
(
internally_posted_
.
empty
())
{
xs
.
swap
(
internally_posted_
);
xs
.
swap
(
internally_posted_
);
internally_posted_
.
clear
();
internally_posted_
.
clear
();
...
...
manual/ConfiguringActorApplications.rst
View file @
52914200
...
@@ -47,7 +47,7 @@ function would resemble the following (pseudo) code:
...
@@ -47,7 +47,7 @@ function would resemble the following (pseudo) code:
.. code-block:: C++
.. code-block:: C++
int main(int argc, char** argv) {
int main(int argc, char** argv) {
// Initialze the global type information before anything else.
// Initial
i
ze the global type information before anything else.
init_global_meta_objects<...>();
init_global_meta_objects<...>();
core::init_global_meta_objects();
core::init_global_meta_objects();
// Create the config.
// Create the config.
...
@@ -263,7 +263,7 @@ following POD type ``foo``.
...
@@ -263,7 +263,7 @@ following POD type ``foo``.
By assigning type IDs and providing ``inspect`` overloads, we provide static and
By assigning type IDs and providing ``inspect`` overloads, we provide static and
compile-time information for all our types. However, CAF also needs some
compile-time information for all our types. However, CAF also needs some
information at run-time for deserializing received data. The function
information at run-time for deserializing received data. The function
``init_global_meta_objects`` takes care
fo
registering all the state we need at
``init_global_meta_objects`` takes care
of
registering all the state we need at
run-time. This function usually gets called by ``CAF_MAIN`` automatically. When
run-time. This function usually gets called by ``CAF_MAIN`` automatically. When
not using this macro, users **must** call ``init_global_meta_objects`` before
not using this macro, users **must** call ``init_global_meta_objects`` before
any other CAF function.
any other CAF function.
...
...
manual/Error.rst
View file @
52914200
...
@@ -5,7 +5,7 @@ Errors
...
@@ -5,7 +5,7 @@ Errors
Errors in CAF have a code and a category, similar to ``std::error_code`` and
Errors in CAF have a code and a category, similar to ``std::error_code`` and
``std::error_condition``. Unlike its counterparts from the C++ standard library,
``std::error_condition``. Unlike its counterparts from the C++ standard library,
``error`` is plat
t
form-neutral and serializable.
``error`` is platform-neutral and serializable.
Class Interface
Class Interface
---------------
---------------
...
...
manual/Metrics.rst
View file @
52914200
...
@@ -252,7 +252,7 @@ counters instead.
...
@@ -252,7 +252,7 @@ counters instead.
Gauges are owned (and created) by a gauge family object. We can either get the
Gauges are owned (and created) by a gauge family object. We can either get the
family object explicitly by calling ``gauge_family``, or we can use one of the
family object explicitly by calling ``gauge_family``, or we can use one of the
two shortcut functions ``gauge_intance`` or ``gauge_singleton``. The C++
two shortcut functions ``gauge_in
s
tance`` or ``gauge_singleton``. The C++
prototypes for the registry member functions look as follows:
prototypes for the registry member functions look as follows:
.. code-block:: C++
.. code-block:: C++
...
...
tools/caf-vec.cpp
View file @
52914200
...
@@ -875,10 +875,10 @@ void caf_main(actor_system& sys, const config& cfg) {
...
@@ -875,10 +875,10 @@ void caf_main(actor_system& sys, const config& cfg) {
out
<<
endl
;
out
<<
endl
;
std
::
mutex
out_mtx
;
std
::
mutex
out_mtx
;
auto
grp
=
sys
.
groups
().
anonymous
();
auto
grp
=
sys
.
groups
().
anonymous
();
for
(
auto
&
fpr
:
intermediate_results
)
{
for
(
auto
&
res
:
intermediate_results
)
{
sys
.
spawn_in_group
(
grp
,
[
&
](
blocking_actor
*
self
)
{
sys
.
spawn_in_group
(
grp
,
[
&
](
blocking_actor
*
self
)
{
second_pass
(
self
,
grp
,
entities
,
fpr
.
res
.
this_node
,
entity_names
,
second_pass
(
self
,
grp
,
entities
,
res
.
res
.
this_node
,
entity_names
,
*
fpr
.
fstream
,
out
,
out_mtx
,
!
cfg
.
include_hidden_actors
,
vl
);
*
res
.
fstream
,
out
,
out_mtx
,
!
cfg
.
include_hidden_actors
,
vl
);
});
});
}
}
sys
.
await_all_actors_done
();
sys
.
await_all_actors_done
();
...
...
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