- 博客(8)
- 资源 (13)
- 收藏
- 关注
原创 webrtc关于锁的编程思想
如何使用锁很简单,但是如何用好锁就很困难了,当线程很多的时候总是由于自己忘记了初始化,忘记了调用解锁,或者由于程序异常而出现没有正常解锁的情况,导致庞大的程序出现各种问题,最常见的就是死了,而不是崩溃了。下面根据我看到的webrtc代码,将webrtc的思想抽出来分享给大家,原来我曾在c++程序设计语言看到过这种思想,但是一直没当回事,感觉太小case了,大的项目谁会这样用,多写了多少代码呀。
2013-01-31 20:29:34 1655 1
原创 webrtc的关键区即锁的使用
webrtc对criticalsection进行了包装,可以实现在windows和支持posix平台使用锁。基本结构如下:在工厂方法中去负责具体类的对象的创建,可以称之为简单工厂模式,一个工厂负责所有产品的创建,通过向工厂传入必要的参数来进行不同产品的创建,一般创建的产品是有关系的,它们共同继承自一个抽象类。针对CriticalSectionWrapper,可以把它看做是一个工
2013-01-31 19:54:59 1334
原创 webrtc的scoped_ptr
前几天看的webrtc实际上一直是libjingle的talk,base目录下的基础性东西,似乎是google在原来的webrtc的代码中又做了一些改进。现在由于工作的需要,所有的眼光都集中到webrtc上了,让我也不得不将精力向webrtc的代码靠拢。最近几天的文章不会涉及到任何关于webrtc框架的东西,何况我也不懂框架,仅仅是对webrtc一些基础类的封装的使用的库,学鲁迅的拿来主义,读
2013-01-31 14:11:45 1562
原创 webrtc调试控制common.h文件
主要阐述common.h主要定义了关于编译的一些情况1,禁用4355警告2,sdtmax的定义,感觉没有什么价值3,ARRAY_SIZE的宏,求数组大小4,ENABLE_DEBUGENABLE_DEBUG宏开放的时候的使用ASSERT(x),VERIFY(x)宏区别仅仅是一个有返回值,一个没有返回值,错误照样打。通过#define ENABLE_DEBUG 0来禁用
2013-01-30 21:35:01 1257
原创 禁止类进行copy和赋值,以及继承的宏
当我们以private方式在类体内声明复制构造函数,而没有代码的实现的时候,实际上我们就禁用了类的复制。当我们进行复制的时候,编译的时候就会报告私有成员不可访问,如果以public方式声明的话,将会在链接时候报错。因此我们一般常用的都是以private方式声明,如果复制,编译时候就会报错。对于赋值函数,同样的道理当我们以private方式声明一个构造函数,我们其实是说明了它不可以被实例
2013-01-30 20:28:25 1178
原创 webrtc中的基本类型定义,以后可以当库使用
/* * libjingle * Copyright 2004 Google Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: *
2013-01-30 20:14:36 1594
原创 webrtc的锁,便于后记
今天想抓点什么优秀的代码,但是文件之间依赖性太大了,很难抽,看来看去,找到了一个地方。锁的使用:1,多线程访问同一个变量,需要加锁。2,锁是一种资源,需要做好加锁和解锁相对应,创建和释放相对应。下面是锁的代码:#ifndef TALK_BASE_CRITICALSECTION_H__#define TALK_BASE_CRITICALSECTION_H__
2013-01-30 16:47:27 2278
原创 编译webrtc的libjingle_peerconnection_unittest模块
下面很多程序的安装之后都会要加入到环境变量中,先解释 一下什么叫环境变量。当我们在cmd下输入命令的时候,例如cp,dir等命令,可以直接运行,而想执行一个打开chrome浏览器的chrome.exe命令时候,就会提示chrome.exe找不到等类似的错误,那是因为chrome.exe并没有被加入到环境变量中。你必须形如这样的方式"C:\Program Files\Google\Chrome\
2013-01-29 13:50:52 2896 4
数字图像处理研究生课件-冈萨雷斯(北大彭宇新)
2012-08-17
数字图像处理教材 美卡斯尔曼(Castleman,K.R.)
2012-08-17
冈萨雷斯的数字图像处理 答案
2012-08-17
冈萨雷斯的数字图像处理 相当经典
2012-08-17
数字图像处理 冈萨雷斯
2012-08-17
识别“2*(3+5)-23/2#”c一个小程序
2010-01-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人