关于控制初始化次数的问题
来源:互联网 发布:淘宝优惠劵转换淘口令 编辑:程序博客网 时间:2024/06/11 04:00
今天在看解码程序ffmpeg的时候发现,初始化接口是这么写的:
void avcodec_init(void){ static int initialized = 0; if(initialized != 0) return ; initialized = 1; dsputil_static_init();}initialized用来控制初始化的次数,很好.
我以前一直用的全局变量统计次数来控制初始化次数,有点麻烦.
DRV_TUN_RESULT drvTuner_initialize( void ){__g_init_count++;if(__g_init_count == 1){ __g_filter_working_num = 0; memset(&__g_cur_info,0,sizeof(DRV_TUN_PARAMS)); if ((__g_usb_tuner_fd = open ("/dev/usb_tuner", O_RDWR)) < 0) {perror ("can't open dev file r/w");return DRV_TUN_FAIL;}ioctl(__g_usb_tuner_fd, USB_RCV_START);}return DRV_TUN_OK;}DRV_TUN_RESULT drvTuner_finalize( void ){__g_init_count--;if(__g_init_count == 0){ioctl(__g_usb_tuner_fd, USB_RCV_CLOSE);close(__g_usb_tuner_fd);__g_usb_tuner_fd = -1;}return DRV_TUN_OK;}
但是我后来反思到,如果用这种办法,反初始化时怎么控制?
看来全局有全局的好处,局部有局部的好处,各有千秋.
视情况而定,用那一种.
- 关于控制初始化次数的问题
- 静态局部变量初始化次数的控制
- 关于健身运动每组次数的问题
- 关于出现字符、数字次数的问题
- 一道关于初始化的问题
- 关于复制初始化的问题
- 关于fluent初始化的问题
- 关于java初始化的问题
- 关于初始化列表的问题
- 关于datetimepicker初始化的问题
- 控制ping的次数
- 关于继承问题初始化的问题
- 关于java的初始化顺序的问题
- 关于树的数据结构初始化问题?
- 关于java对象初始化的问题
- 关于类成员的初始化顺序问题
- 关于文档中对话框初始化的问题
- 关于数组和数组初始化的问题
- ORA-01810: format code appears twice
- 判断 iPhone 是否已插入 SIM 卡的方法
- Vi编辑器完全使用手册
- DrawIndexedPrimitive()
- C# out关键字
- 关于控制初始化次数的问题
- ubuntu 下PDF乱码问题
- 【Java】多线程
- 在屏幕上显示ASCII表--汇编上机实验
- c语言自赠 转自2345
- 今天准备落户csdn
- gdb 使用方法
- RegularExpressionValidator控件中正则表达式用法
- 同变量自赠运算