31 #ifndef __BASE_ATOMICIO_HH__
32 #define __BASE_ATOMICIO_HH__
52 #define STATIC_MSG(fd, m) \
54 static const char msg[] = m; \
55 atomic_write(fd, msg, sizeof(msg) - 1); \
66 #define STATIC_ERR(m) STATIC_MSG(STDERR_FILENO, m)
68 #endif // __BASE_ATOMICIO_HH__
ssize_t atomic_write(int fd, const void *s, size_t n)
ssize_t atomic_read(int fd, void *s, size_t n)