java 多线程使用方法及Socket的使用
public class newThread implements Runnable{
public void run(){
dosome();
}
public void dosome(){
System.out.println("ss");
}
}
class testThread{
public static void main(){
Runnable ThreadTask = new newThread();
Thread s = new Thread(ThreadTask);
s.start();
System.out.println("back in main");
}
}
去专门定义一个类调用Runnable接口,但因为该接口位于java.lang包,因此无需import。
新建一个线程只需在位于主线程的main函数里声明一个Thread对象,形如:
Thread aThread = new Thread(ThreadTask);
这个ThreadTask为使用了Runnable接口的类,并且该接口中只存在一个run方法
//补充网络联机部分:
在服务器上写的服务器程序:
ServerSocket serverSock = new ServerSocket(4242)//表示在服务器上使用4242这个端口来接收用户消息
while(true){
Socket sock = serverSock.accept();//如果服务器的4242端口收到了信息,则serverSock.accept()返回true,新建一个端口想客户端发送信息
//如果4242没有收到信息则代码会停止在上一行
PrintWriter writer = new PrintWriter(sock.getOutputStream());
writer.println("sssss");
writer.flush();//因为输出时,只有等到缓冲区满了才输出,有些时候输出的内容比较少的时候,没有充满缓冲区,不会立刻输出
}
客户端向服务器发信息也是用PrintWriter
客户端读取来自服务器的信息:
Socket sock = new Socket("10.2.132.70",4242);//与服务器连接
InputStreamReader streamReader = new InputStreamReader(socket.getInputStream());
BufferedReader reader = new BufferedReader(streamReader);
String advice = reader.readline();
reader.close();
java 多线程使用方法及Socket的使用的更多相关文章
- java多线程实现TCP网络Socket编程(C/S通信)
目录 开篇必知必会 一.多线程技术 二.实现多线程接收 1.单线程版本 2.多线程版本 三.多线程与进程的关系 四.客户端界面完整代码 五.多线程通信对比 最后 开篇必知必会 在前一篇<Java ...
- Java多线程-run方法与start方法的区别
package com.interview; /** * java多线程的两种实现方式以及run.start方法的区别 * @author MEI.LIU * */ public class Thre ...
- Java多线程-join方法
thread.Join把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程.比如在线程B中调用了线程A的Join()方法,直到线程A执行完毕后,才会继续执行线程B. 具体例子看链接 ...
- Java——多线程之方法详解
Java多线程系列文章是Java多线程的详解介绍,对多线程还不熟悉的同学可以先去看一下我的这篇博客Java基础系列3:多线程超详细总结,这篇博客从宏观层面介绍了多线程的整体概况,接下来的几篇文章是对多 ...
- java 多线程 Synchronized方法和方法块 synchronized(this)和synchronized(object)的理解
synchronized 关键字,它包括两种用法:synchronized 方法和 synchronized 块. 1. synchronized 方法:通过在方法声明中加入 synchronized ...
- java多线程 join方法以及优先级方法
/*join:当A线程执行到了B线程的.join()方法时,A就会等待.等B线程都执行完,A才会执行. join可以用来临时加入线程执行. 1.线程使用join方法,主线程就停下,等它执行完,那么如果 ...
- Java多线程优化方法及使用方式
一.多线程介绍 在编程中,我们不可逃避的会遇到多线程的编程问题,因为在大多数的业务系统中需要并发处理,如果是在并发的场景中,多线程就非常重要了.另外,我们在面试的时候,面试官通常也会问到我们关于多线程 ...
- 2017第45周一java多线程创建方法
1. 从JDK1.5开始,Java提供了3种方式来创建,启动多线程: Ø 继承Thread类来创建线程类,重写run()方法作为线程执行体. Ø 实现Runnable接口来创建线程类,重写run()方 ...
- java 多线程 start方法 run方法 简单介绍。
一 start开启一个多线程, run 只是一个内部的方法. package com.aaa.threaddemo; /* * start方法的作用? * 在 Java中启动多线程调用的是start方 ...
随机推荐
- RESTful API实现
RESTful API实现 ASP.NET Core Web API 开发-RESTful API实现 REST 介绍: 符合REST设计风格的Web API称为RESTful API. 具象状态传输 ...
- Azure File SMB3.0文件共享服务(4)
在Linux上使用Azure文件共享服务 使用SMB 3.0从用户自己的数据连接到Azure,需要加密连接,但目前的Linux SMB客户端都暂时都不支持,Linux的开源社区正在努力将该功能添加到L ...
- 浏览器兼容问题汇总<转>
浏览器的内核 Mozilla Firefox ( Gecko ) Internet Explorer ( Trident ) Opera ( Presto ) Safari ( WebKit ) Go ...
- 为TL-WR720N编译带mentohust和njit-client的openwrt固件
openwrt的trunk版已经支持720N了.简单好多. 首先下载openwrt源码,我下的是trunk版 svn co svn://svn.openwrt.org/openwrt/trunk/ 然 ...
- Delphi获取系统服务描述信息
program Project1; {$APPTYPE CONSOLE} uses Windows, WinSvc; type SERVICE_DESCRIPTION = packed record ...
- centos 6.5 安装docker
Docker 安装: 1.centos 6 安装 yum update 升级到centos 6.7版本: yum install -y epel-release 安装 epel扩展源 yum inst ...
- Linux 备份工具
Linux 备份工具 GNU 的传统备份工具 GNU tar — http://www.gnu.org/software/tar/ GNU cpio — http://www.gnu.org/so ...
- cf459B Pashmak and Flowers
B. Pashmak and Flowers time limit per test 1 second memory limit per test 256 megabytes input standa ...
- vmware重装系统后虚拟机实例文件*.vmdk重用
如题:vmware重装系统后自定义的:虚拟机名称*.vmdk文件重用. 一.问题描述 系统磁盘坏道,装不上系统直接换了硬盘,但是新装的Vmware不能够通过open方式打开“自定义*.vmdk”(这个 ...
- 代码管理git总结
1. http://blog.csdn.net/teresa502/article/details/7388834 pwd 当前工作目录 cd(不加参数) 进root cd(folder) 进入文件夹 ...