MCPcopy Create free account
hub / github.com/OpenDDS/OpenDDS / liveliness_send_task

Method liveliness_send_task

dds/DCPS/DataWriterImpl.cpp:2485–2503  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2483}
2484
2485void
2486DataWriterImpl::liveliness_send_task(const MonotonicTimePoint& now)
2487{
2488 ThreadStatusManager::Event ev(TheServiceParticipant->get_thread_status_manager());
2489
2490 ACE_Guard<ACE_Recursive_Thread_Mutex> guard(lock_);
2491 OPENDDS_ASSERT(qos_.liveliness.kind == DDS::AUTOMATIC_LIVELINESS_QOS);
2492
2493 const TimeDuration elapsed = now - last_liveliness_activity_time_;
2494
2495 if (elapsed < liveliness_send_interval_) {
2496 // Reschedule.
2497 liveliness_send_task_->schedule(liveliness_send_interval_ - elapsed);
2498 return;
2499 }
2500
2501 send_liveliness(now);
2502 liveliness_send_task_->schedule(liveliness_send_interval_);
2503}
2504
2505void
2506DataWriterImpl::liveliness_lost_task(const MonotonicTimePoint& now)

Callers

nothing calls this directly

Calls 1

scheduleMethod · 0.45

Tested by

no test coverage detected