在用java开发程序中什么时候应用到线程

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:58:02
在具体的java开发中,遇到什么情况下才能使用线程.例如开发客户端,服务器端?能详细介绍一下吗?

一般 需要独立运行某个东西的时候会用到线程
我用过的就是 端口监听的时候
比如说 你的程序在200端口上 设置另一个监听,当有数据通过这个端口传输的时候 就会被监听程序所获取 但是如何保证 实时监听?这个就需要有个线程独立的 来执行这个工作 保持监听的状态。

再比如说 你需要做一个任务处理的程序 当数据库中有新任务时候就进行处理/或者XX路径下出现新的文件 就进行处理,这个时候 也需要用到线程 来实时扫描数据库或者是文件路径,来保证任务能够得到及时的处理

线程是指程序的一个指令执行序列,WIN32 平台支持多线程程序,允许程序中存在多个线程。 在单 CPU 系统中,系统把 CPU 的时间片按照调度算法分配给各个线程,因此各线程实际
上是分时执行的,在多 CPU 的 Windows NT 系统中, 同一个程序的不同线程可以被分配到不
同的 CPU 上去执行。由于一个程序的各线程是在相同的地址空间运行的,因此设及到了如何共
享内存, 如何进行线程通信等问题,这样便需要处理各线程之间的同步问题,这是多线程编程
中的一个难点。
线程是程序中一个单一的顺序控制流程.

在单个程序中同时运行多个线程完成不同的工作,称为多线程.
线程和进程的区别在于,子进程和父进程有不同的代码和数据空间,而多个线程则共享数据空间,每个线程有自己的执行堆栈和程序计数器为其执行上下文.

多线程主要是为了节约CPU时间,发挥利用,根据具体情况而定.

服务端,当然是服务器,必须支持多线程。客户端连接到服务端,就是服务端多了一个线程

对用户来说,无论何时使用线程都能够给他们带来更加愉快的体验。这就是说,任何时候将那些可能会停滞或是消耗很长时间的代码放在一个独立的线程中运行,会使用户觉得你的游戏并没有停滞下来。

举例来说,你应该在下述情况下使用线程:

1. 当你需要从文件系统中读取大量的文件时