zoukankan      html  css  js  c++  java
  • 8.20Java入门--->第二十四节(多线程)

    dateInputStream、dateOutputStream

    数据流,操作基本数据类型

    File

    创建文件 Create

    检测文件是否存在

    多线程

    1、实现多线程的方式

    继承Thread

    实现 Runnable接口

    实现 Callable接口

    算了自己总结吧,8.20   14:45 一直做练习到17:20下课

    实现实现 Callable接口

    //创建服务
    ExecutorService esr=new Executors.newFixedThreadPool(3);
    //提交执行 Future
    <String> s= esr.submit(myThread3);
    //读取结果 String s1
    =s.get();
    //关闭服务 esr.shutdown();

    对应的实现类,实现Callable接口,重写Call方法
    Call方法有返回值

     实质只有Runable一种方式,Thread类实现了Runable接口

    2、启动一个新线程

    启动线程的唯一方 法就是通过 Thread 类的 start()实例方法。start()方法是一个 native 方法,它将启动一个新线 程,并执行 run()方法。

    start()方法才是新建一个线程。

    3、线程池

    Java 里面线程池的顶级接口是 Executor,但是严格意义上讲真正的线程池接口是 ExecutorService。

    1、newCachedThreadPool

    创建一个可根据需要创建新线程的线程池,调用 execute 将重用以前构造 的线程(如果线程可用)。如果现有线程没有可用的,则创建一个新线程并添加到池中。终止并 从缓存中移除那些已有 60 秒钟未被使用的线程。

    2、newFixedThreadPool

    创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程。

    如果在所有线程处于活动状态时提交附加任务, 则在有可用线程之前,附加任务将在队列中等待。

    3、newScheduledThreadPool

    创建一个线程池,它可安排在给定延迟后运行命令或者定期地执行。

    4、newSingleThreadExecutor

    这个线程 池可以在线程死后(或发生异常时)重新启动一个线程来替代原来的线程继续执行下去!

  • 相关阅读:
    BFS模版程序
    7.3 GROUP BY的“新”功能
    《ASP.NET》数据绑定—DropDownList、ListBox
    GPS NEMA 0183协议
    使用Microsoft.Office.Interop.Excel时,64位问题
    HDU 1848(sg博弈) Fibonacci again and again
    Codeforces 559A Gerald&#39;s Hexagon 数三角形
    移动mm 话费支付接入过程(ane)
    Android怎样实现毛玻璃效果之Android高级模糊技术
    ECLIPSE android 布局页面文件出错故障排除Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V
  • 原文地址:https://www.cnblogs.com/springxian/p/13538142.html
Copyright © 2011-2022 走看看