#include <dc_buffered_stream_send_expqueue_z.hpp>
Public Member Functions | |
| dc_buffered_stream_send_expqueue_z (distributed_control *dc, dc_comm_base *comm, procid_t target, bool zlib=false) | |
| bool | channel_active (procid_t target) const |
| void | send_data (procid_t target, unsigned char packet_type_mask, std::istream &istrm, size_t len=size_t(-1)) |
| void | send_data (procid_t target, unsigned char packet_type_mask, char *data, size_t len) |
| void | send_loop () |
| void | shutdown () |
| size_t | bytes_sent () |
Sender for the dc class. The job of the sender is to take as input data blocks of pieces which should be sent to a single destination socket. This can be thought of as a sending end of a multiplexor. This class performs compressed ZLib transmissions and is the matching sender for dc_stream_receive_z.
Definition at line 56 of file dc_buffered_stream_send_expqueue_z.hpp.
| size_t graphlab::dc_impl::dc_buffered_stream_send_expqueue_z::bytes_sent | ( | ) | [inline, virtual] |
Bytes sent must be incremented BEFORE the data is transmitted. Packets marked CONTROL_PACKET should not be counted
Implements graphlab::dc_impl::dc_send.
Definition at line 99 of file dc_buffered_stream_send_expqueue_z.hpp.
| bool graphlab::dc_impl::dc_buffered_stream_send_expqueue_z::channel_active | ( | procid_t | target | ) | const [inline, virtual] |
returns true if the channel to the target machine is truly open. The dc_comm_base specification allows for lazy channels which are not created until it is used. For such implementations, this function should return true if the channel has been created, and false otherwise. Non-lazy implementations should return true all the time. The invariant to ensure is that this function must return true for a target machine ID if a packet has been sent from this machine to the target before this call.
Implements graphlab::dc_impl::dc_send.
Definition at line 73 of file dc_buffered_stream_send_expqueue_z.hpp.
| void graphlab::dc_impl::dc_buffered_stream_send_expqueue_z::send_data | ( | procid_t | target, | |
| unsigned char | packet_type_mask, | |||
| std::istream & | istrm, | |||
| size_t | len = size_t(-1) | |||
| ) | [virtual] |
Called by the controller when there is data to send. if len is -1, the function has to compute the length by itself, or send the data from the stream directly. the strm is not copyable.
Implements graphlab::dc_impl::dc_send.
| void graphlab::dc_impl::dc_buffered_stream_send_expqueue_z::send_data | ( | procid_t | target, | |
| unsigned char | packet_type_mask, | |||
| char * | data, | |||
| size_t | len | |||
| ) | [virtual] |
Another possible interface the controller can call with when there is data to send. The caller has responsibility for freeing the pointer when this call returns
Implements graphlab::dc_impl::dc_send.
| void graphlab::dc_impl::dc_buffered_stream_send_expqueue_z::shutdown | ( | ) | [virtual] |
Last call sent to any instance of dc_send. If the sender multithreads, the sending thread must shut down.
Implements graphlab::dc_impl::dc_send.
1.7.1