The Messaging API for C (also referred to as SolClient) is specifically designed to provide high message throughput and low latency with the lowest CPU utilization possible. In addition to the common Enterprise API features, the C API enables fine-grained control of threading and message processing through additional features like:

  • Allows fine-tuning of API behavior, such as whether operations should be blocking or non-blocking in nature.
  • Allows for the option of application file descriptors to be monitored within the API, providing the application with callbacks for readable and writable events.
  • Allows for the option of the application taking over control of file descriptors created within the API to connect to message brokers, where the application must provide readable and writable events to the API.
  • Support for timer services.

Message Exchange Patterns

The C API supports all common message exchange patterns.

  • Publish / Subscribe
  • Point to Point
  • Request / Reply


The C API supports:

  • Connection management to Solace PubSub+ message brokers
  • Addition and removal of topic subscriptions
  • Sending and receiving messages Direct and Guaranteed messages
  • Structured data types that do not rely on a specific architecture or programming language
  • Extensive support for logging and customizing through property parameters
  • Request/reply messaging support
  • Session Transactions
  • SolCache Client API support
  • Queue browsing
  • Topic dispatch

The C API does not currently support the following features.

  • XA Transactions