GTK中创建线程函数g_thread_new和g_thread_create的区别

原创 2015年11月19日 20:09:10

使用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);
 void* func(void* data)
{

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

printf调用导致valgrind产生kill信号

今天调试系统资源使用时,原本正常执行的程序,在valgrind环境下,频繁出现被kill的情况。在log中搜索到这样一段:vex x86->IR: unhandled instruction byte...

Glib学习笔记(2)

2.1 MainLoopmain loop是Glib中一个非常重要的部分,其主要用途类似于Windows的消息循环。所以它是一个循环,不停得从某个地方取得“消息”,然后派发到消息处理函数,交给他们处理...
  • Innost
  • Innost
  • 2010-04-06 21:14
  • 8884

基于GMainloop的GThread创建、退出与资源释放

1. 创建_priv->context  =   g_main_context_new();    \\创建一个GMainContext_priv->mainloop =   g_main_loop_...

pkg-config命令了解和使用

1.首先,什么是pkg-config: pkg-config 当你从源代码编译软件时,用来提供依赖库的信息的软件。pkg-config原本是设计用于Linux的,但现在在各个版本的BSD、win...

Makefile简单例子

目的:                基本掌握了 make 的用法,能在Linux系统上编程。     ...

程序线程退出后,zombie (僵尸线程)的问题!

作者: uNDeaDEmail: someonebw@gmail.comBlog: http://blog.csdn.net/undead转载请注明出处 动态观察生产环境下的进程! pstack 进程...
  • undead
  • undead
  • 2011-05-26 14:55
  • 1572

GTK 多线程例子

 GTK线程的简单使用与线程中更新图形界面   1)线程的简单使用,通过一个简单例子来说明(能运行)   编译命令: gcc   `pkg-config gtk+-2.0 --cfla...

windows下glib使用

glib是linux下的基础库,封装了一些C接口。当然也跨平台了。但是在windows下搞了很久才能运行起来。首先去官方网站下载动态库http://ftp.gnome.org/pub/gnome/bi...
  • owe
  • owe
  • 2007-05-10 22:28
  • 18017

利用Thread创建线程-java

记一次tomcat线程创建异常调优:unable to create new native thread

测试在进行一次性能测试的时候发现并发300个请求时出现了下面的异常: HTTP Status 500 - Handler processing failed; nested exception i...
  • 5207
  • 5207
  • 2016-10-24 14:33
  • 1573
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)