- 博客(14)
- 资源 (2)
- 收藏
- 关注
转载 SQLite在多线程环境下的应用
这几天研究了一下SQLite这个嵌入式数据库在多线程环境下的应用,感觉里面的学问还挺多,于是就在此分享一下。先说下初衷吧,实际上我经常看到有人抱怨SQLite不支持多线程。而在iOS开发时,为了不阻塞主线程,数据库访问必须移到子线程中。为了解决这个矛盾,很有必要对此一探究竟。关于这个问题,最权威的解答当然是SQLite官网上的“Is SQLite threadsafe?”这个问
2013-07-09 15:16:04
863
转载 Linux下异步I/0:O_ASYNC标志,aio_read
方法一:使用fcntl来置O_ASYNC位。 这个方法的效果是,当输入缓存中的输入数据就绪时(输入数据可读),内核向用F_SETOWN来绑定的那个进程发送SIGIO信号。此时程序应该用getchar等函数将输入读入。 1.首先,为SIGIO信号设置一个处理函数,用来读取并处理位于输入缓存中的数据。
2013-07-03 16:03:16
992
转载 C++拷贝构造函数详解
一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyint a = 100; int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。
2013-05-13 16:59:08
598
转载 详解大端模式和小端模式
详解大端模式和小端模式一、大端模式和小端模式的起源 关于大端小端名词的由来,有一个有趣的故事,来自于Jonathan Swift的《格利佛游记》:Lilliput和Blefuscu这两个强国在过去的36个月中一直在苦战。战争的原因:大家都知道,吃鸡蛋的时候,原始的方法是打破鸡蛋较大的一端,可以那时的皇帝的祖父由于小时侯吃鸡蛋,按这种方法把手指弄破了,因此他的父亲,就下令,命令
2013-03-05 10:18:14
718
转载 ftp主动模式与被动模式及iptables配置
先理解主被动的联接方式:FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。Port模式:ftp server:tcp 21 client:dynamicPasv模式:ftp server:tcp 21 PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户
2013-03-05 10:15:02
1559
转载 创建守护进程
8.2.1 实现守护进程的步骤在Linux系统中,要编程实现一个守护进程必须遵守如下的步骤。1.让init进程成为新产生进程的父进程。调用fork函数创建子进程后,使父进程立即退出。这样,产生的子进程将变成孤儿进程,并被init进程接管,同时,所产生的新进程将变为在后台运行。2.调用setsid函数通过调用setsid函数,使得新创建的进程脱离控制终端,同时创建新的进程组,并
2013-02-25 17:19:02
513
转载 linux会话浅析
说起会话,我们经常登录到linux系统,执行各种各样的程序,这都牵涉到会话。但是,一般情况下我们又很少会去关注到会话的存在,很少会去了解它的来龙去脉。本文就对linux会话相关的信息做一些整理,看看隐藏在我们日常使用的背后,都有些什么样的逻辑。【会话的维系】维系一个会话,最常见的有两种方式:一是基于某种凭证,比如web网站的登录会话,在登录验证之后,服务器就会返回一个ses
2013-02-25 13:13:33
714
转载 linux 下各errno的意义
strerror(errno):获取errno对应的错误/****************************获取错误代码描述**************/#include /* for strerror */#include #include int main(int argc, char ** argv) { int i = 0
2013-01-31 15:01:49
753
转载 QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connect
编译无问题,在执行时终端出现以下字母QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.QSqlDatabasePrivate::addDatabase: duplicate connection name 'q
2013-01-06 14:39:05
1299
转载 用C语言实现Ping程序功能
大部分人用ping命令只是作为查看另一个系统的网络连接是否正常的一种简单方法。在这篇文章中,作者将介绍如何用C语言编写一个模拟ping命令功能的程序。ping命令是用来查看网络上另一个主机系统的网络连接是否正常的一个工具。ping命令的工作原理是:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者,这有点象潜水艇声纳系统中使用的发声装置。例如
2012-12-28 10:29:19
837
转载 SQLite3数据类型
NULL INTEGER REAL TEXT BLOB 但实际上,sqlite3也接受如下的数据类型: smallint 16 位元的整数。 interger 32 位元的整数。 decimal(p,s) p 精确值和 s大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点後有几位数。如果没有特别指定,则系统会设为 p=5;
2012-06-18 13:24:32
1762
转载 linux下获取时间的若干函数
asctime(将时间和日期以字符串格式表示)表头文件#include定义函数char * asctime(const struct tm * timeptr);函数说明asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回。此函数已经由时区转换成当地时间,字符串格式为:“Wed Jun 3
2012-04-28 09:50:08
516
转载 Linux串口编程
Linux 操作系统从一开始就对串行口提供了很好的支持,本文就 Linux 下的串行口通讯编程进行简单的介绍。串口简介串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常用的串口是 RS-232-C 接口(又称 EIA RS-232-C)它是在 1970 年由美国电子工业协会(EIA)联合贝尔系统、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通
2012-04-09 13:25:58
505
转载 linux vim显示行号、语法高亮、自动缩进和tab值的设置
本文对vim的设置仅仅针对UBUNTU与Fedora系统,其他LINUX版本我没有实验过.在UBUNTU中vim的配置文件存放在/etc/vim目录中,配置文件名为vimrc在Fedora中vim的配置文件存放在/etc目录中,配置文件名为vimrc在终端 输入以下命令来编辑vimrc配置文件:sudo vim /etc/vim/vimrc或者 sudo gedit /
2012-03-29 11:43:04
1152
Linux网络编程+宋敬彬+孙海滨+源代码
2013-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人