Если ваша логика пунктуатора работает медленно, как несколько минут, поток Kafka не будет потреблять новые сообщения от определенного раздела (на котором выполняется пунктуатор), пока пунктуатор не завершит выполнение. также долго работающий пунктуатор не должен вызывать перебалансировку (перебалансировка может произойти по другим причинам)
, влияет ли пунктуатор на одном разделе на другие, зависит от того, запускаете ли вы приложение на одном узле или на нескольких, а также на num.stream.threads
свойство, которое вы могли бы указать для Kafka Streams. если ваше приложение работает на одном узле, поток Kafka будет использовать только один поток для всех разделов (по умолчанию num.stream.threads
равен 1). так что в этом случае пунктуатор на определенном разделе также блокирует все остальные разделы. но если у вас есть несколько экземпляров приложения и / или num.stream.threads
больше 1, если некоторые из пунктуаторов работают быстро, то такие разделы не будут затронуты длительными пунктуаторами в других разделах.
Если бит является просто интервалом, который содержит значение, Вы хотите в наименее значимом бите, то:
printf("%d", bit & 0x1);
должен сделать это. И делает двоичный файл - И с числом только с первым набором значимого бита, таким образом, Вы удаляете всю остальную часть битов в целом числе.
Если необходимо обобщить больше, чем Herms, Вы могли бы сделать это:
#define IsBitSet(val, bit) ((val) & (1 << (bit)))
/* ... your code ... */
printf ("%c", IsBitSet(bit, 0) ? '1' : '0');
printf эквивалентен ответу Herms, как.
Если Вы говорите о битовом поле в C, можно сделать это:
struct foo { int b:1; } myFoo;
printf("%c", myFoo.b ? '1' : '0');
Распечатать m-th укусило (m от 1.. 16 или 32) n:
void print_bit(n, m)
{
printf("%d", n & (1 << (m - 1)));
}
Удалите - 1
бит, если Ваш разрядный счетчик запускается в 0.
Ответ C++ легче, чем C89 один с собственным типом bool:
bool b = true;
std::cout << b;
C99 весьма схож:
_Bool b = 1;
printf("%d", b);
Связанный вопрос: Как Вы устанавливаете, очищаете и переключаете единственный бит? расширенное обсуждение одноразрядного доступа в c и C++.