在librdkafka中,dr_cb在Produce()线程或poll()线程上执行

时间:2018-08-10 23:35:59

标签: c++ multithreading apache-kafka

我有不同的线程来向Kafka生成消息,而其他线程仅轮询Kafka以检查传递报告或事件。

问题是,将在哪个线程上执行dr_cb()方法?它将在原始生产线程还是轮询线程上执行?

如果在原始生产线程上调用了dr_cb,它将中断当前执行吗?

1 个答案:

答案 0 :(得分:1)

当应用程序调用{​​{1}}或log_cb时,应用程序线程会触发传递报告回调以及大多数其他回调(rd_kafka_poll()是例外)。

这在introduction document中有解释。