如何解决代码中RTLD_LAZY和RTLD_NOW的用例是什么
如何区分RTLD_LAZY和RTLD_NOW,以及何时使用代码中的内容?
解决方法
如何区分RTLD_LAZY和RTLD_NOW,以及何时使用代码中的内容?
您希望在以下情况下使用RTLD_NOW
- 您想通知您
dlopen
创建的库在加载时(而不是在以后的任意时间)没有未解析的符号 - 您要在加载时而不是在以后的任意时间支付符号解析的价格(CPU,可能的延迟)
您希望在以下情况下使用RTLD_LAZY
- 您知道该库确实具有无法解析的符号,但是您没有使用该库的那一部分
- 通常,如果您仅使用库中的几个符号,并且库本身有很多需要解析的符号,但您并没有使用其中的大多数符号
- 在加载后无法解析符号并导致进程终止的情况为“正常”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。