本文主要是介绍GTK中创建线程函数g_thread_new和g_thread_create的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用GThread函数,需要引用glib.h头文件。
这两个接口的核心区别就是 g_thread_create 是旧的接口,现在已经不使用了,而g_thread_new是新的接口,建议使用。
g_thread_create:
g_thread_create has been
deprecated
since version 2.32 and should not be used in newly-
written code. Use g_thread_new()instead
g_thread_new:
GThread * g_thread_new ( const gchar *name, GThreadFunc func, gpointer data); |
g_thread_new三个参数,第一个参数只是标示线程用的,主要在调试的时候可以看到这个name,不影响实际执行效果。
第二个参数func就是线程执行的函数,第三个参数其实是第二个参数func函数的参数。
真正的线程执行时是这样调用的 func(data)
如:
Gthread* p_thread;
p_thread = g_thread_new(
"Unused String"
, func, data
)
;
这篇关于GTK中创建线程函数g_thread_new和g_thread_create的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!