#include #include #include "platform.h" struct _PlatformData { pthread_t read_thread; }; void initialize_platform(MQTTHandle *handle) { handle->platform = calloc(sizeof(struct _PlatformData), 1); } MQTTStatus run_read_task(MQTTHandle *handle, Reader reader) { if (pthread_create(&handle->platform->read_thread, NULL, (void *(*)(void *))reader, (void *)handle)) { return MQTT_STATUS_ERROR; } return MQTT_STATUS_OK; } MQTTStatus join_read_task(MQTTHandle *handle) { pthread_join(handle->platform->read_thread, NULL); return MQTT_STATUS_OK; } void release_platform(MQTTHandle *handle) { free(handle->platform); }