做网站记者好吗,wordpress微信公众号模板,网上效果代码网站可以下载吗,wordpress 中的函数大全前言#xff1a; 
Gstreamer 提供以 GstMessage 和 GstBus 为基础的消息传递机制#xff0c;所有GstMessage 发送的时候都需要指定 GstBus 用来明确当前 message 将在哪条 Bus 上流转。所有的 GstMessage 最终都会进入一个handler#xff0c;这个handler函数可以通过两种方式…前言 
Gstreamer 提供以 GstMessage 和 GstBus 为基础的消息传递机制所有GstMessage 发送的时候都需要指定 GstBus 用来明确当前 message 将在哪条 Bus 上流转。所有的 GstMessage 最终都会进入一个handler这个handler函数可以通过两种方式设置 gst_bus_set_sync_handler 和 gst_bus_add_watch。 如果没有设置 handler 函数那么GstMessage将永远不会被处理从而造成内存泄漏。 gst_bus_set_sync_handler 
handler函数被同步执行所谓的同步是指 handler的运行线程 和 element里调用 gst_bus_post 发送 Message 的线程 是同一个线程。 
或者说调用 gst_bus_post 会直接同步进入 handler 处理函数。   
gst_bus_add_watch 
通过此函数添加的handler函数不会在 gst_bus_post 调用时被同步唤起而是在某个其他时间点在 g_mainloop 里被唤起从而处理 GstMessage。而g_mainloop一般都是主线程。所以这种情况用的不多。原因如下 
实时性较差gst_bus_post会立刻返回此时调用发送 GstMessage 的线程并不知道外界是否按照自己的意图处理完 message。有时候甚至很久都不会被处理因为主线程一般比较忙。占用主线程资源主线程一般都是ui线程因此阻塞主线程会导致ui卡住。 还有一种异步的方法是 gst_bus_add_signal_watch  这种方法会把 message 转换为 signal , 有什么特点