| 73 | } |
| 74 | |
| 75 | static uint64_t SubIDs2Mask(const config::TopicConfig *topic_config, const set<int> *sub_ids) { |
| 76 | uint64_t mask = -1; |
| 77 | if (sub_ids) { |
| 78 | mask = 0; |
| 79 | int sub_id; |
| 80 | for (auto &&it : *sub_ids) { |
| 81 | sub_id = it; |
| 82 | if (sub_id > 0) mask |= (1ULL << (sub_id - 1ULL)); |
| 83 | } |
| 84 | } |
| 85 | return mask; |
| 86 | } |
| 87 | |
| 88 | |
| 89 | comm::RetCode Producer::Enqueue(const int topic_id, const uint64_t uin, const int handle_id, const string &buffer, |