diff options
author | Martin Sustrik <sustrik@250bpm.com> | 2012-04-05 10:41:47 +0200 |
---|---|---|
committer | Martin Sustrik <sustrik@250bpm.com> | 2012-04-06 12:56:24 +0200 |
commit | a5fefa3d5ba405deedba689b056959358048d935 (patch) | |
tree | 219d2936e57003c785aa1bf8f57b5be294823fe0 | |
parent | 494d4d36237f37c455f6689fca280ed75498403a (diff) |
EMTHREAD error code removed
libxs (as opposed to libzmq) requires at least one I/O thread per
context. Thus, "no I/O thread available" error doesn't make sense
anyome.
This patch removes the code and the documentation.
It keeps the definition of EMTHREAD itself for backward compatibility.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
-rw-r--r-- | doc/xs_bind.txt | 2 | ||||
-rw-r--r-- | doc/xs_connect.txt | 2 | ||||
-rw-r--r-- | include/xs.h | 3 | ||||
-rw-r--r-- | src/err.cpp | 2 | ||||
-rw-r--r-- | src/socket_base.cpp | 10 |
5 files changed, 4 insertions, 15 deletions
diff --git a/doc/xs_bind.txt b/doc/xs_bind.txt index 8cd49bc..fc08124 100644 --- a/doc/xs_bind.txt +++ b/doc/xs_bind.txt @@ -60,8 +60,6 @@ The requested 'address' specifies a nonexistent interface. The 'context' associated with the specified 'socket' was terminated. *ENOTSOCK*:: The provided 'socket' was invalid. -*EMTHREAD*:: -No I/O thread is available to accomplish the task. EXAMPLE diff --git a/doc/xs_connect.txt b/doc/xs_connect.txt index a0a6ae7..898b915 100644 --- a/doc/xs_connect.txt +++ b/doc/xs_connect.txt @@ -58,8 +58,6 @@ The requested 'transport' protocol is not compatible with the socket type. The 'context' associated with the specified 'socket' was terminated. *ENOTSOCK*:: The provided 'socket' was invalid. -*EMTHREAD*:: -No I/O thread is available to accomplish the task. EXAMPLE diff --git a/include/xs.h b/include/xs.h index 6f0004c..e44587e 100644 --- a/include/xs.h +++ b/include/xs.h @@ -111,7 +111,8 @@ XS_EXPORT void xs_version (int *major, int *minor, int *patch); #define EFSM (XS_HAUSNUMERO + 51) #define ENOCOMPATPROTO (XS_HAUSNUMERO + 52) #define ETERM (XS_HAUSNUMERO + 53) -#define EMTHREAD (XS_HAUSNUMERO + 54) +#define EMTHREAD (XS_HAUSNUMERO + 54) /* Kept for backward compatibility. */ + /* Not used anymore. */ /* This function retrieves the errno as it is known to Crossroads library. */ /* The goal of this function is to make the code 100% portable, including */ diff --git a/src/err.cpp b/src/err.cpp index f05cf06..f9549ff 100644 --- a/src/err.cpp +++ b/src/err.cpp @@ -49,8 +49,6 @@ const char *xs::errno_to_string (int errno_) return "The protocol is not compatible with the socket type"; case ETERM: return "Context was terminated"; - case EMTHREAD: - return "No thread available"; default: #if defined _MSC_VER #pragma warning (push) diff --git a/src/socket_base.cpp b/src/socket_base.cpp index fbb3b5e..5b1752e 100644 --- a/src/socket_base.cpp +++ b/src/socket_base.cpp @@ -326,10 +326,7 @@ int xs::socket_base_t::bind (const char *addr_) // Remaining trasnports require to be run in an I/O thread, so at this // point we'll choose one. io_thread_t *thread = choose_io_thread (options.affinity); - if (!thread) { - errno = EMTHREAD; - return -1; - } + xs_assert (thread); if (protocol == "tcp") { tcp_listener_t *listener = new (std::nothrow) tcp_listener_t ( @@ -437,10 +434,7 @@ int xs::socket_base_t::connect (const char *addr_) // Choose the I/O thread to run the session in. io_thread_t *thread = choose_io_thread (options.affinity); - if (!thread) { - errno = EMTHREAD; - return -1; - } + xs_assert (thread); // Create session. session_base_t *session = session_base_t::create (thread, true, this, |