- friend void intrusive_ptr_release(simgrid::s4u::Exec * e)
- {
- if (e->refcount_.fetch_sub(1, std::memory_order_release) == 1) {
- std::atomic_thread_fence(std::memory_order_acquire);
- delete e;
- }
- }
-
- friend void intrusive_ptr_add_ref(simgrid::s4u::Exec * e) { e->refcount_.fetch_add(1, std::memory_order_relaxed); }
-
- friend Actor; // Factory of Exec
+ friend XBT_PUBLIC(void) intrusive_ptr_release(simgrid::s4u::Exec* e);
+ friend XBT_PUBLIC(void) intrusive_ptr_add_ref(simgrid::s4u::Exec* e);
+ friend ExecPtr this_actor::exec_init(double flops_amount);