Ticket #4164: fix_delay.patch
File fix_delay.patch, 1.2 KB (added by , 12 years ago) |
---|
-
message_queue.hpp
491 491 //Copy user buffer to the message 492 492 std::memcpy(free_msg->data(), buffer, buffer_size); 493 493 494 //bool was_empty = p_hdr->is_empty();494 bool was_empty = p_hdr->is_empty(); 495 495 //Insert the first free message in the priority queue 496 496 p_hdr->queue_free_msg(); 497 497 498 498 //If this message changes the queue empty state, notify it to receivers 499 //if (was_empty){499 if (was_empty){ 500 500 p_hdr->m_cond_recv.notify_one(); 501 //}501 } 502 502 } // Lock end 503 503 504 504 return true; … … 587 587 //Copy data to receiver's bufers 588 588 std::memcpy(buffer, top_msg->data(), recvd_size); 589 589 590 //bool was_full = p_hdr->is_full();590 bool was_full = p_hdr->is_full(); 591 591 592 592 //Free top message and put it in the free message list 593 593 p_hdr->free_top_msg(); 594 594 595 595 //If this reception changes the queue full state, notify senders 596 //if (was_full){596 if (was_full){ 597 597 p_hdr->m_cond_send.notify_one(); 598 //}598 } 599 599 } //Lock end 600 600 601 601 return true;