The Solace C API (also referred to as SolClient) is specifically designed to provide high message throughput and low latency with the lowest CPU utilization possible. The C API enables fine grained control of the 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 the Solace messaging appliance, 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 the following common API features.

  • Connection management to Solace message routers
  • 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