在多线程环境下使用 glib 函数库

必须调用 g_thread_init 初始化一下,否则所有的函数都不是线程安全的。

虽然很久以前就尝试使用 glib 库,但还从来没有在多线程环境下使用过它。直到现在在团队内推 glib 的时候才发现 gstring 有线程不安全问题,结果还亏得同事去看 glib 源代码才发现原因所在,:PP

另:今天发现 Intel 发布的两个 top 工具,一个 LatencyTOP,一个 PowerTOP;看起来都是非常的有用..

Topic: 技术

评论

//hand

最近也遇到 glib/gdk/gtk+ 环境下多线程情形。

glib的线程安全是API级的线程安全吧?

我使用GHashTable的时候, 当使用g_hash_table_lookup返回value以后, 这个value的使用需要自己额外保证线程安全么?

恩,我觉得是这样的。只是API安全,返回的值肯定要自己额外处理