| | |
| | | #include "shm_queue.h" |
| | | #include "lock_free_queue.h" |
| | | |
| | | enum shm_socket_flag_t |
| | | { |
| | | SHM_MSG_TIMEOUT = 1, |
| | | SHM_MSG_NOWAIT = 2 |
| | | }; |
| | | |
| | | |
| | | enum shm_connection_status_t { |
| | | SHM_CONN_CLOSED=1, |
| | |
| | | int shm_recv(shm_socket_t * socket, void **buf, int *size) ; |
| | | |
| | | /** |
| | | * @flags : SHM_MSG_NOWAIT |
| | | * @flags : BUS_NOWAIT_FLAG |
| | | */ |
| | | int shm_sendto(shm_socket_t *socket, const void *buf, const int size, const int key, const struct timespec * timeout = NULL, const int flags=0); |
| | | |
| | | int shm_recvfrom(shm_socket_t *socket, void **buf, int *size, int *key, struct timespec * timeout = NULL, int flags=0); |
| | | int shm_recvfrom(shm_socket_t *socket, void **buf, int *size, int *key, const struct timespec * timeout = NULL, int flags=0); |
| | | |
| | | 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, |
| | | struct timespec * timeout = NULL, int flags=0); |
| | | const struct timespec * timeout = NULL, int flags=0); |
| | | |
| | | /** |
| | | * 功能同shm_sendandrecv, 但是不是线程安全的 |
| | | */ |
| | | int shm_sendandrecv_unsafe(shm_socket_t *socket, const void *send_buf, const int send_size, const int send_key, void **recv_buf, int *recv_size, |
| | | struct timespec * timeout = NULL, int flags=0); |
| | | const struct timespec * timeout = NULL, int flags=0); |
| | | |
| | | |
| | | |