- 博客(11)
- 收藏
- 关注
转载 Linux环境进程间通信(一) 管道及有名管道
原博客1、 管道概述及相关API应用1.1 管道相关的关键概念管道是Linux支持的最初Unix IPC形式之一,具有以下特点:管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道;只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程);单独构成一种独立的文件系统:管道对于管道两端的进程而言,就是一个文件,但它不是普通的文件,它不属于某种文件系统,而是
2014-03-31 22:42:13 544
转载 深刻理解Linux进程间通信(IPC)
序linux下的进程通信手段基本上是从Unix平台上的进程通信手段继承而来的。而对Unix发展做出重大贡献的两大主力AT&T的贝尔实验室及BSD(加州大学伯克利分校的伯克利软件发布中心)在进程间通信方面的侧重点有所不同。前者对Unix早期的进程间通信手段进行了系统的改进和扩充,形成了“system V IPC”,通信进程局限在单个计算机内;后者则跳过了该限制,形成了基于套接口(socket)的
2014-03-31 20:55:57 555
原创 Linux系统编程---线程同步---条件变量
1.条件变量介绍条件变量时线程同步的另一种方式。条件变量个多个线程提供了一个会合的场所。条件变量和互斥量一起使用,允许线程以无竞争的方式等待特定条件的发生。2.条件变量作用互斥量和条件变量联合避免了条件竞争。条件竞争:一个线程预备等待一个条件变量,当它在真正进入等待之前,另一个线程恰好触发了该条件。个人理解: 线程A测试条件不满足,进而在释放锁和进入阻塞之间,其他线程触
2014-03-30 21:31:13 629
原创 Linux系统编程---线程同步---互斥量
互斥量是信号灯的特殊形式。mutex: mut表示相互(mutual) ,ex表示排斥(exclusion)。1.互斥量的初始化静态初始化pthread_mutex_t _mutex = PTHREAD_MUTEX_INITIALIZER动态初始化int pthread_mutex_init(phtread_mutex_t *mutex,
2014-03-30 21:29:29 679
原创 Linux系统编程---线程概念
1.建立线程对于线程的操作都是通过pthread_t类型的线程ID来实现的。创建线程int pthread_create(pthread_t * thread, const pthread_attr_t *attr, void *(*start)(void *), void *arg)thread返回创建的线程的ID
2014-03-30 21:28:08 701
原创 Linux系统编程---IO操作
1.系统调用系统调用效率较低1.系统调用开销大,要从用户空间切换到内核空间,然后切换回用户空间 2.系统调用与底层驱动相关,不一定能够按指定一次写完。write函数#include size_t write(int files, const void *buf, size_t nbytes );返回值 0:写入字节为0-1:写入出错了 错误
2014-03-30 21:22:10 657
转载 Qt中QGraphics类坐标映射关系详解(有图有真相,实例讲解)
如果你英文足够好,可以参考Qt帮助文档中的:The Graphics View Coordinate System。---------------------------------------------------------------------------------------------------------------------------首先,先上显示界面图(Embe
2014-03-24 22:52:46 1980
转载 Qt窗口与视口坐标转换
为什么使用这两个概念?为了让在逻辑坐标下自己作的图,在窗口大小变换时能自动适应,而不用去管窗体目前(物理上)是多大的。概念区别我们先要明白视口和窗口,物理坐标和逻辑坐标的概念,所谓视口与其物理坐标 ,就是指在屏幕上的看到的实际的一个个像素和其坐标,而所谓窗口和逻辑坐标,就是指我们指定了一个这个窗体的坐标系,在这个坐标系内做的东西是先在其内画好,在转换到物理坐标系内去。本来物理坐标和逻辑
2014-03-24 22:03:49 4264
转载 QPixmap和QImage的区别及剖析
(一)QPixmap和QImage的区别http://www.thisisqt.com/forum/viewthread.php?tid=267QPixmap是专门为绘图而生,当需要绘制图片时你需要使用QPixmap。QImage则是为I/O,为图片像素访问以及修改而设计的。如果你想访问图片的像素或是修改图片像素,则需要使用QImage,或者借助于QPainter来操作像素。另外跟QIma
2014-03-24 09:20:53 938
原创 Qt事件基本了解[2014/03/23]
最近学习了Qt学习之路中的事件,对此进行各总结和测试,做一个对事件的基本认识。事件与信号槽区别,信号槽是同步的,而事件可以同步和异步的,如sendEvent直接发给接受者,postEvent投递到事件队列队尾,前面处理完了再处理。信号是由具体对象发出,直接调用接收者的对应slot函数,而事件时有Qt统一管理的。Qt的事件大体分为以下层次:1.QCoreApplica
2014-03-23 22:40:02 636
原创 Qt开发环境搭建(Linux)
Qt官方地址:http://qt-project.org/downloads1.QtCreator 3.0.1直接运行./qt-creator-opensource-linux-x86_64-3.0.1.run习惯编译qt库 qt4.8.5 相对稳定 作为新手我还是先用这个吧2.编译Qt4.8.5库qt-everywhere-openso
2014-03-22 21:40:22 775
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人