小编Tej*_*eja的帖子

C++ 共享库有重复的符号

我是 C++ 符号表和库的新手,想了解符号表的行为。我们有一个原生支持的安卓应用程序。在分析共享库的符号表的过程中,我注意到 .so 文件中存在重复的符号。请查找符号表的示例列表。

0162502c  w   DO .data  00000004  Base        boost::asio::error::get_addrinfo_category()::instance

00aaa4f4  w   DF .text  0000009c  Base        boost::asio::error::get_misc_category()

01626334  w   DO .bss   00000004  Base        guard variable for boost::asio::error::get_misc_category()::instance

00aab4d0  w   DF .text  0000003c  Base        boost::asio::error::detail::misc_category::~misc_category()

00aab368  w   DF .text  0000003c  Base        boost::asio::error::detail::addrinfo_category::~addrinfo_category()

00aab3a4  w   DF .text  00000034  Base        boost::asio::error::detail::addrinfo_category::name() const

00aab3d8  w   DF .text  000000f8  Base        boost::asio::error::detail::addrinfo_category::message(int) const

00aab50c  w   DF .text  0000003c  Base        boost::asio::error::detail::misc_category::~misc_category()
Run Code Online (Sandbox Code Playgroud)

在这里您可以注意到以下符号“boost::asio::error::detail::misc_category::~misc_category()”出现了两次。

我想了解为什么我们在符号表中得到重复的符号。也有兴趣知道为什么我的应用程序在有重复符号时运行良好 [哪个链接器应该在理想情况下抛出重复符号错误] 还想知道符号表中的重复符号是否会增加“so”的大小,最终导致增加应用程序的大小

如果发生这种情况,我如何确保在符号表中只获得唯一的条目。注意:-我们正在使用clang

android android-ndk c++11 .so

4
推荐指数
1
解决办法
1615
查看次数

如何从Kafka中的两个不同集群进行消费?

我有两个 kafka 集群 A 和 B,B 是 A 的副本。我想仅在 A 关闭时才使用集群 B 中的消息,反之亦然。然而,使用来自两个集群的消息会导致重复消息。那么有什么方法可以配置我的 kafka 消费者仅从一个集群接收消息。

谢谢 -

apache-kafka kafka-consumer-api

2
推荐指数
1
解决办法
3983
查看次数