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)
{

}

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

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

Glib学习笔记(2)

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

matlab实现gabor filter (7)

这个gabor filter使用了正弦函数和余弦函数分别表示gabor filter 的实数部分和虚数部分。 滤波器代码如下 :   % SPATIALGABOR - applies singl...

Glib笔记

GLib是一个跨平台的、用C语言编写的库,起初是GTK+的一部分,但到了GTK+第二版,开发者决定把跟图形界面无关的代码分开,这些代码于是就组装成了GLib。因为GLib具有跨平台特性,所以用它编写的...

利用Thread创建线程-java

  • 2008年09月25日 19:42
  • 4KB
  • 下载

OutOfMemoryError: unable to create new native thread.无法创建新的线程

这种现象比较少见,也比较奇怪,主要是和jvm与系统内存的比例有关。   这种怪事是因为JVM已经被系统分配了大量的内存(比如1.5G),并且它至少要占用可用内存的一半。有人发现,在线程个数很多的情况...
  • jssngz2
  • jssngz2
  • 2013年07月17日 17:42
  • 1039

JVM最多能创建多少个线程: unable to create new native thread

转载自:http://www.rigongyizu.com/jvm-max-threads/ 有应用报出这样的异常“java.lang.OutOfMemoryError: unable to...
  • yaowj2
  • yaowj2
  • 2015年12月09日 14:01
  • 5704

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

测试在进行一次性能测试的时候发现并发300个请求时出现了下面的异常: HTTP Status 500 - Handler processing failed; nested exception i...
  • 5207
  • 5207
  • 2016年10月24日 14:33
  • 1980

java.lang.OutOfMemoryError: unable to create new native thread无法创建本地线程分析

此次应用出现OOM异常分析如下   1.        现象: Caused by: java.lang.OutOfMemoryError:unable to create new native...

Java中继承Thread和实现Runnable这两种创建线程有何区别

原文地址:点击打开链接 创建线程的两种方式 Java中线程的创建有两种方式: 1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2. 通过实现R...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:GTK中创建线程函数g_thread_new和g_thread_create的区别
举报原因:
原因补充:

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