我在 C 中使用 Aeron 客户端实现。我需要关闭。但是C中没有闭包...
例如:
void poll_handler(void *clientd, const uint8_t *buffer, size_t length, aeron_header_t *header)
{
aeron_subscription_t* subscription = (aeron_subscription_t*)clientd;
aeron_subscription_constants_t subscription_constants;
aeron_header_values_t header_values;
aeron_subscription_constants(subscription, &subscription_constants)
aeron_header_values(header, &header_values);
// How to get some_data here?
}
void some_func(int some_data)
{
aeron_fragment_assembler_create(fragment_assembler, poll_handler, subscription)
}
我尝试使用 Clang 块扩展,但没有接受块的函数实现。
如何在处理程序中获取一些本地数据?