每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。进程也可能是整个程序或者是部分程序的动态执行。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程.....
分类:
编程语言 时间:
2014-05-07 17:32:42
阅读次数:
378
1,线程概述线程是程序汇中独立的指令流。线程有一个优先级,实际上正在处理的程序的位置计数器,一个存储其局部变量的栈。每个线程都有自己的栈。但应用程序的内存和堆由一个进程的所有线程共享。进程包含资源,如windows句柄,文件句柄或其他内核对象。每个进程都分配了虚拟内存。一个进程至少包含一个线程。操作...
分类:
编程语言 时间:
2014-05-07 17:13:48
阅读次数:
477
1、采用queue,而不是采用list遍历2、添加两个锁,读锁和写锁
分类:
编程语言 时间:
2014-05-07 14:07:12
阅读次数:
223
准备开始写一些Linux 下网络编程以及多线程的blog,就从这个简单的echo程序开始吧。
在echo的服务端使用多线程与客户进行通信,可以实现一个服务端程序同时连接多个客户的功能。那么,到底在服务端要有多少个线程呢?
答案是:1+1+n。一个主线程,一个监听(listen)线程,与n个客...
分类:
编程语言 时间:
2014-05-07 13:55:04
阅读次数:
446
一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。线程是指进程中的一个执行流程,一个进程中可以运行多个...
分类:
编程语言 时间:
2014-05-07 13:54:19
阅读次数:
326
Volatile修饰的成员变量在每次被线程访问时,都强迫从主内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到主内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。Java语言规范中指出:为了获得最佳速度,允许线程保存共享成员变量的私有拷贝,而且只当线程进入...
分类:
编程语言 时间:
2014-05-07 13:08:37
阅读次数:
312
创建线程的第一种方式:继承Thread类。1,继承Thread类2,继承Thread类里的run方法,将线程的任务代码封装到run方法中。3,创建线程对象4,调用线程对象的start方法开启线程创建线程的第二种方式:实现Runnable接口。1,定义类实现Runnable接口。2,覆盖接口中的run...
分类:
编程语言 时间:
2014-05-07 10:51:36
阅读次数:
364
软中断-softirq特点相同和不同的软中断都可以在不同处理器上同时执行一个软中断不会抢占另一个软中断何时执行从中断程序返回时ksoftirqd线程中显示调用软中断最多有32个,一个32位的整型数据可以被用来标记刮起的软中断使用策略软中断应用于确实需要的场合,目前只有网络驱动和SCSI驱动中使用。另...
分类:
系统相关 时间:
2014-05-07 01:00:42
阅读次数:
474
一 串行模式和并行模式 一般一个服务应用程序采用以下两个架构模型之一:串行模式
一个线程等待一个客户发出的请求,当请求到达的时候,线程会被换醒来处理客户的请求。并发模式。一个线程等待一个客户发出的请求,当请求到达的时候,线程会创建一个新的线程来处理客户的请求,而当前线程则会进入下一次循环继续等待.....
分类:
其他好文 时间:
2014-05-07 00:22:59
阅读次数:
309
进程:运行在系统当中的任务(一个进程至少有一个线程)线程:运行在进程当中的任务(线程不能脱离进程)进程:独立内存地址空间
线程:同进程中线程共享内存地址继承Thread 类 run()子线程的入口子线程没结束前,主线程不会结束优先级(1-10 10最高)的设置,只能让优先级高的
抢到执行CPU的几....
分类:
编程语言 时间:
2014-05-07 00:02:20
阅读次数:
379