| | |
| | | #include "hashtable.h" |
| | | #include "logger_factory.h" |
| | | #include <map> |
| | | #include <cassert> |
| | | #include "bus_error.h" |
| | | |
| | | static Logger *logger = LoggerFactory::getLogger(); |
| | |
| | | |
| | | if ((rv = shm_sendto(tmp_socket, send_buf, send_size, send_key, timeout, flags)) == 0) { |
| | | rv = shm_recvfrom(tmp_socket, recv_buf, recv_size, &recv_key, timeout, flags); |
| | | printf("======send key =%d , recv key=%d\n", send_key, recv_key); |
| | | assert( send_key == recv_key); |
| | | if(send_key != recv_key) |
| | | err_exit(0, "send key need to equal to recv key! send key =%d , recv key=%d", send_key, recv_key); |
| | | return rv; |
| | | } else { |
| | | return rv; |
| | |
| | | |
| | | if ((rv = shm_sendto(tmp_socket, send_buf, send_size, send_key, timeout, flags)) == 0) { |
| | | rv = shm_recvfrom(tmp_socket, recv_buf, recv_size, &recv_key, timeout, flags); |
| | | printf("======send key =%d , recv key=%d\n", send_key, recv_key); |
| | | |
| | | if(rv != 0) { |
| | | printf("_shm_sendandrecv_alloc_new shm_recvfrom : %s\n", bus_strerror(rv)); |
| | | } |
| | | else if(rv == 0 ) { |
| | | assert( send_key == recv_key); |
| | | if(send_key != recv_key) { |
| | | err_exit(0, "send key need to equal to recv key! send key =%d , recv key=%d", send_key, recv_key); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | shm_close_socket(tmp_socket); |
| | |
| | | int shm_sendandrecv(shm_socket_t *socket, const void *send_buf, |
| | | const int send_size, const int send_key, void **recv_buf, |
| | | int *recv_size, const struct timespec *timeout, int flags) { |
| | | return _shm_sendandrecv_thread_local(socket, send_buf, send_size, send_key,recv_buf, recv_size, timeout, flags); |
| | | return _shm_sendandrecv_alloc_new(socket, send_buf, send_size, send_key,recv_buf, recv_size, timeout, flags); |
| | | } |
| | | |
| | | |