java理论之java多线程与网络编程

多线程

  一 :多线程的基本概念:

      1:线程是一个程序的不同的执行路径

      2:进程---内存区代码去的可执行代码,main方法,主线程,真正执行的方式和代码

  二:创建/启动新的线程:

      1:创建---创建新线程只有一种方法:实现Runnable中的run()是创建新线程,唯一方法

           (1)创建一个类,继承java.lang.Thread类:class ExThr extends Thread{}

           (2)创建一个普通类,实现Runable()接口:class ImpRun implements Runnable{}

      2:启动---启动新线程只有一种方法:调用Thread类中的start()方法,是启动新线程的唯一方法,在主线程中启动别的线程:就是在main中创建我们线程的对象

           (1)在主线程中,创建一个目标线程类对象,这个目标线程类已经是Thread,就不用在创建Thread对象,直接调用start()方法即可

           (2)在主线程,创建Thread类的对象,创建目标线程类对象,并传入Thread对象中,创建一个新线程,调用Thread对象的start()方法,这才是启动一个新线程

           我们需要注意的是:方法调用,启动线程的区别,只有thread的start()方法开会调用操作系统api创建新线程

  三:状态控制:

    1:状态转换:

        (1):创建

        (2):start:排队

        (3):就绪,调度

        (4):阻塞

        (5):运行

        (6):终止

    2:线程控制方法:

        (1):isAlive():判断线程是否还活着

        (2):getPriority():活得线程优先级

        (3):setPriority()

        (4):sleep():设置线程睡眠毫秒数,静态方法

        (5):join():调用某个线程该方法,和当前线程合并,即这个执行指向完毕在执行当前线程

        (6):yield():让出CPU时间片,进入再次等待

        (7):wait()

        (8):notify()

        (9):notifuAll

    3:结束某个线程

        (1):interrupt:打断关闭某线程

        (2):定义一个boolean循环标志符,为假的是偶,run()停止,线程结束

---------------------------

网络编程

  一:网络编程基础,网络通信协议:

    1:OSI七层模型:

        (1):应用层

        (2):表示层

        (3):回话层

        (4):传输层

        (5):网络层(IP)

        (6):数据传输层(MAC)

        (7):物理层

     2:TIP/IP四层模型:

        (1):应用层(应用程序)

        (2):传输层(TCP/UDP)

        (3):网络层(IP层)

        (4):物理/数据链路层

  二:Socket(网络编程)---操作系统的网络编程都叫这个

             ---两个链路的一端叫socket

             ---Socket(网络编程)在java.net包

             ---TCP Scoket 通信模型

             ---UDP Socket通信模型

      

时间: 2024-10-04 06:19:14

java理论之java多线程与网络编程的相关文章

Java多线程与网络编程综合使用

最近重新看多线程与网络编程这一块的知识,好久没碰这一块了,都忘得差不多了,这里将这两个模块的知识串接一下.同时处理多线程与网络编程最为经典的例子莫过于聊天室,那我就聊天室案例作为一个回顾. 首先,我们来看以下代码: package MultiTCP; import java.io.DataOutputStream; import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; /** * 必须先

Java基础复习笔记系列 九 网络编程

Java基础复习笔记系列之 网络编程 1. 2.

[JAVA_开课吧资源]第五周 I/O操作、多线程、网络编程技术

主题一 I/O操作 » 流的概念 在面向对象语言中, 数据的输入和输出都是通过数据流来实现的.数据流是一组有顺序.有起点和终点的字符集合.就好比是两个不同的池子,一个池子中存满了水,而另一个池子中则没有任何的东西,在这两个水池中安放一个管子,水就可以从一个池子流向另一个池子了.在从一个池子向另一个池子输送水的过程中,水扮演的角色就是数据流. [请点击查看更多内容 转自文章] » Stream stream代表的是任何有能力产出数据的数据源,或是任何有能力接收数据的接收源.在Java的IO中,所有

Java笔记二十四.TCP网络编程

 TCP网络编程 转载请表明出处:http://blog.csdn.net/u012637501(嵌入式_小J的天空) 从上面一节内容可以知道,利用UDP通信的两个程序是平等的,无主次之分,两个程序代码可以完全一样.但利用TCP协议进行通信的两个应用程序,是有主从之分的,一个称为服务器程序,另外一个称为客户机程序.Java中提供了ServerSocket类用于创建服务器端的socket,Socket类用于创建客户端socket. 一.APIs简介 java.net.ServerSocket (1

Java高级特性 第8节 网络编程技术

一.网络概述 1.网络的概念和分类 计算机网络是通过传输介质.通信设施和网络通信协议,把分散在不同地点的计算机设备互连起来,实现资源共享和数据传输的系统.网络编程就就是编写程序使联网的两个(或多个)设备(例如计算机)之间进行数据传输.Java语言对网络编程提供了良好的支持,通过其提供的接口我们可以很方便地进行网络编程.下面先对网络编程的一些基础知识进行介绍,最后给出使用Java语言进行网络编程的实例. 按照地理覆盖范围,计算机网络可以分为局域网(LAN).城域网(MAN).广域网(WAN). 2

Java知多少(104)网络编程之统一资源定位符URL

统一资源定位符URL(Uniform Resource Locator)是www客户机访问Internet时用来标识资源的名字和地址.超文本链路由统一资源定位符URL维持.URL的格式是: <METHOD>://<HOSTNAME:PORT>/<PATH>/<FILE> 其中:Method是传输协议:HOSTNAME是文档和服务器所在的Internet主机名(域名系统中DNS中的点地址);PORT是服务端口号(可省略):PATH是路径名,FILE是文件名.例

JAVA笔试面试题系列之----②网络编程

1.网络编程概述 (1)网络模型 OSI参考模型 TCP/IP参考模型 (2)网络通讯要素 IP地址 端口号 传输协议 (3)网络通讯前提: **找到对方IP **数据要发送到指定端口.为了标示不同的应用程序,所以给这些网络应用程序都用数字进行标示 .这个表示就叫端口. **定义通信规则.这个规则称为通信协议,国际组织定义了通用协议TCP/IP (4)计算机网络: 是指将地理位置不同的具有独立功能的多台计算机及其外部设备, 通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和

JAVASE学习笔记:第十三章 多线程和网络编程

一.进程是由线程组成的 调用线程:1.继承thread类或者实现rannable接口 2.重写run方法 3.创建线程 4.通过start方法开启线程 thread t1=new thread(runnable xx); 线程的状态:1.新建状态(new)  2.可执行状态(start获取CPU的使用权限)  3.执行状态(执行完返回第2步) 4.死亡状态 5.当线程遇到输入流和sleep时,执行状态变成阻塞状态 Thread.activeCount()  当前活动线程数 Thread.curr

Qt 多线程和网络编程学习

一,Qt多线程类学习 QThread类,开始一个新的线程就是开始执行重新实现QThread::run(),run()是默认现实调用exec(),QThread::start()开始线程的执行,run()函数是在start()函数调用之后开始执行 QMutex类,互斥量/互斥锁,加锁解锁,原子操作 QWaitCondition类,一个线程在一定条件下等待其它线程的唤醒,在此之前一直处于休眠期.QWaitCondition::wakeOne()随机唤醒一个等待的线程,QWaitCondition::