在查找资料和学习的过程中留下的一点总结,敬请拍砖指教。
程序、进程、线程的区别?
进程是一个程序的进行时状态,一个程序运行在不同的数据集上可以形成多个进程。线程是进程的一个运行单元,一个进程中可以有多个线程。
volatile 和 synchronized 区别
volatile 是变量修饰符,使线程不拷贝主内存中的变量而是直接操作主内存中的变量,从而保持变量的一致性,但是volatile在变量的值依赖于它的前一个值时会失效。
synchornized 修饰方法或代码块,使得整个代码块获得监视器,加锁,消除线程中的变量,直接从主内存中拷贝过来变量,执行,安全的同步到主内存,释放锁。消耗更多的资源。
线程与线程之间怎样通信?进程与进程之中怎样通信?
线程与线程之间:
a). 使用全局变量
b).使用消息实现通信
c).使用事件CEvent类实现线程间通信
进程与进程间通信(IPC):
管道、有名管道、共享内存、信号量、消息队列、套接字等
详见:http://www.jianshu.com/p/9218692cb209
原文:http://www.cnblogs.com/lyystudy/p/5718800.html