`

Java多线程编码

    博客分类:
  • java
阅读更多
Java多线程编码

多线程一直是编写程序代码的一个核心,Java中实现方法有以下两种:

一、继承自Thread

class Mythread extends Thread

[

//方法

public void run()

{

//内容

}

//……

}

开启线程时调用start()方法。

二、实现Runnable接口

class 类名 implements Runnable{
方法1;
方法2;

public void run(){
// other code…
}
属性1;
属性2;

 
}

三、线程同步

多线程往往牵扯到共享资源的问题,Java中可以通过同步代码块实现。

语法格式:
synchronized(同步对象){
 //需要同步的代码
}

四、售票系统模拟

 

/**
 * @author Rollen-Holt
 * */
class hello implements Runnable {
    public void run() {
        for (int i = 0; i < 10; ++i) {
            sale();
        }
    }
 
    public synchronized void sale() {
        if (count > 0) {
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println(count--);
        }
    }
 
    public static void main(String[] args) {
        hello he = new hello();
        Thread h1 = new Thread(he);
        Thread h2 = new Thread(he);
        Thread h3 = new Thread(he);
        h1.start();
        h2.start();
        h3.start();
    }
 
    private int count = 5;
}

 

分享到:
评论

相关推荐

    Java多线程详解

    就是java多线程的编码实现以及自己整理的文档

    Java多线程编码的变体

    到目前为止,博客中大部分示例任务类都实现了Runnable。在非常简单的情况下,你可能会希望使用直接从Thread继承这种可替换的方式。 public class SimpleThread extends Thread { private int countDown = 5;...

    Java 多线程阻断获取任务

    本代码是JAVA 编码,使用多线程泛型例子获取对应多线程返回结果,便于后期扩充,可以改变ExecutorService。

    java,socket多线程一对一聊天

    java语言,基于socket的多线程一对一聊天,暂不支持并发

    Java编码规范总结

    4.多线程错误 - 错误的延迟初始化和更新静态属性。 5.错误用法 - 集合转换为数组元素时发生的类型转换错误。 修复建议:使用c.toArray(new String[c.size()])。 6.不良实践 - 方法返回boolean类型返回了null。 ...

    Java-Elevator:这是电梯的Java多线程应用程序

    这是电梯的Java多线程应用程序。 尖端 所有的源代码文件都应使用GBK编码加载,否则某些图标可能会以错误的样式显示。 解释 有4个图像和5个类别。 图片 --------------- -------------- --------------- 已关闭....

    一篇文章认识4种Java多线程的创建方式

    并行与并发:那么JAVA多线程实现方式:(1)继承Thread类实现多线程:(2)实现Runnable接口方式实现多线程:(3)实现callable方式:(比实现Runnable方式强大)(4)使用ExecutorService、Future(线程池):实现有返回...

    Java2D编程--著名的Java大手动画

    环境:Window XP sp3, JDK 1.6, MyEclipse 5.5 ...代码看上去绝对比VC++的多线程编码优雅。本示例一行注释一行代码,非常详细的说明了怎样使用Java 2D API来编写Java动画应用。 阅读对象:非常熟悉Java基本概念的人员

    Java-Multithreading-Tutorial:“正版编码器” YouTube频道Java多线程教程的源代码-java source code

    Java-Multithreading-Tutorial:“正版编码器” YouTube频道Java多线程教程的源代码

    JAVA聊天室 实现局域网内部通信的软件

    将Java语言和JDBC灵活结合起来使用;进行数据库的操作,大量地减少编码量;还使用了Socket、IO、多线程等技术。

    Java多线程编程之读写锁ReadWriteLock用法实例

    主要介绍了Java多线程编程之读写锁ReadWriteLock用法实例,本文直接给出编码实例,需要的朋友可以参考下

    java辅导

    Java 程序编码规范.doc Java的文件与磁盘操作.doc Java多线程编程详解.doc Java远程方法调用.doc Java中的时间操作.doc 深入理解abstract class和interface.doc ……

    java安全编码指南之:线程安全规则

    如果我们在多线程中引入了共享变量,那么我们就需要考虑一下多线程下线程安全的问题了。那么我们在编写代码的过程中,需要注意哪些线程安全的问题呢?一起来看看吧。大家都做过方法重写,我们知道方法重写是不会检查...

    java8源码-mult:多线程应用

    编码原则 禁止使用java8以下版本的语法 环境依赖 java8 maven git tomcat mysql 部署步骤 打包项目 启动tomcat 目录结构描述 &gt; ├── Readme.md // help &gt; ├── pom.xml // maven配置文件 &gt; ├── LICENSES // ...

    超全的Java岗面试题库合集.zip

    多线程 集合框架 乐观锁与悲观锁 设计模式 数据库 性能优化 ActiveMQ消息中间件 Dubbo JVM Kafka Linux MongoDB MyBatis MySQL Netty Nginx RabbitMQ消息中间件 Redis Spring SpringBoot SpringCloud SpringMVC ...

    高级java笔试题-jsong:包含Java基础,编码规范,笔试题,面试技巧,数据结构及算法,架构设计等等

    多线程 JVM 分布式相关 常用框架\第三方组件 架构设计 DB 相关 Netty 相关 附加技能 联系作者 qianjinfu#gmail.com 欢迎加入 铁杆粉丝 的知识星球 分享系统架构及优化实战经验级相关咨询 程序员职业规划交流 创业...

    JAVA_API1.6文档(中文)

    java.nio.charset 定义用来在字节和 Unicode 字符之间转换的 charset、解码器和编码器。 java.nio.charset.spi java.nio.charset 包的服务提供者类。 java.rmi 提供 RMI 包。 java.rmi.activation 为 RMI 对象...

Global site tag (gtag.js) - Google Analytics