当前位置: 首页 > news >正文

广告网站怎么做口碑优化

广告网站怎么做,口碑优化,企业建设有限公司,2345网址大全电脑版线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中#xff0c;是进程中的实际运作单位。简单理解为#xff1a;引用软件中相互独立#xff0c;可以同时允许的功能 进程是程序的基本执行实体 并发#xff1a;在同一时刻#xff0c;有多个指令在单个CPU上交替…线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中是进程中的实际运作单位。简单理解为引用软件中相互独立可以同时允许的功能 进程是程序的基本执行实体 并发在同一时刻有多个指令在单个CPU上交替执行 并行在同一时刻有多个指令在多个CPU上同时执行 多线程的实现方式 继承Thread类的方式进行实现实现Runnable接口进行实现利用Callable接口和Future接口的方式实现 方式一 //将类声明为Thread类的子类重写Thread类的run方法。 class MyThread() extends Thread{public void run(){//这里书写要执行的代码System.out.print(hello,xun);//System.out.print(getName())//获取当前线程的线程名} }MyThread mythread new MyThread(); mythread.start();//启动线程mythread.setName(线程一)//给线程起名字方式二 //声明实现Runnable接口的类该类实现run方法。 class MyThread() implements Runnable{public void run(){//这里书写要执行的代码System.out.print(hello,xun);//获取当前线程对象Thread t Thread.currentThread();t.getName();//获取当前线程的线程名} } //表示多线程要执行的任务 MyThread mythread new MyThread(); //创建线程对象 Thread t new Thread(mythread); //开启线程 t.start(); t.setName(线程一)//给线程起名字方式三 //利用Callable接口和Future接口的方式实现 //特点可以获取到多线程运行的结果 class MyCallable implements CallableInteger{//该线程返回值的类型public Integer call() throws Exception{//求1—100之间的和int sum0;for(int i 1;i100;i){sumi;}return sum;} } //创建MyCallable的对象(表示多线程要执行的任务) MyCallable mc new MyCallable(); //创建FutureTask的对象(作用是管理多线程的运行结果) FutureTaskInteger ft new FutureTask(mc); //创建线程的对象 Thread t new Thread(ft); t.start(); //获取多线程的运行结果 Integer res ft.get();多线程中常用的成员方法 如果我们没有给线程设置名字线程也是有默认名字的格式Thread-XX是序号从0开始如果给线程设置名字有两种方法1.通过setName设置线程名 2.通过构造函数设置线程名当JVM虚拟机启动后会自动运行多条线程其中有一条线程叫main线程他的作用就是调用main方法执行里面的代码线程的优先级最小的是1最大的10默认是5优先级越大抢到CPU的概率越大当其他的非守护线程执行完毕之后守护线程会陆续结束(可能不会将自己的程序运行完)t.join()//表示将线程t插入到当前线程之前 线程的声明周期 线程安全问题 线程的执行有随机性这样会导致线程存在安全问题 解决方法 同步代码块把操作共享的代码锁起来 synchronized(锁对象){//操作共享的代码块 } //特点一锁默认打开有一个线程进去了锁自动关闭 //特点二里面的代码全部执行完毕线程出来锁自动打开 //锁对象一定是唯一的一般是锁对象的字节码文件对象 synchronized(thread.class);同步方法把synchronized关键字加到方法上 格式:修饰符 synchronized 返回值类型 方法名(方法参数){...} //特点一同步方法是锁住方法里面的所有方法 //特点二锁对象不能自己指定非静态方法this静态方法当前类的字节码文件对象为了更加清晰的表达如何释放锁获得锁JDK5之后提供了一个锁对象Lock void lock()//获得锁 void unlock()//释放锁//手动释放锁手动获得锁Lock是接口不能被直接实例化使用它的实现类ReentrantLock来实例化 死锁 出现了锁的嵌套 产生因素 1、系统拥有的资源数量 2、资源分配策略 3、进程对资源的使用要求 4、并发进程的推荐顺序 必要条件 互斥条件进程互斥使用资源占有和等待条件进程申请资源得不到时不会释放已经占有的资源不剥夺条件一个进程不能抢占其他进程的资源循环等待条件存在一组进程循环等待资源 死锁的防止 破坏产生死锁的任意一个条件即可 生产者和消费者(等待唤醒机制) 生产者生产数据 消费者消费数据 常见方法 public void wait();//当前线程等待知道被其他线程唤醒public void notify();//随机唤醒一个线程public void notifyAll();//唤醒所有线程线程的状态 新建状态(new) - 创建线程对象就绪状态(Runnable) - start方法阻塞状态(blocked) - 无法获得锁对象等待状态(waiting) - wait方法 计时状态(timed_waiting) - sleep方法结束状态(terminated) - 全部代码运行完毕线程池 以前使用多线程的弊端 ​ 用到线程时就创建 ​ 用完之后线程消失 这样会浪费操作系统的资源 线程池类似于一个容器里面有线程需要用到线程时直接取即可用完还回去。 线程池有最大线程数量限制可以自己设置 1. 创建一个空池子 2. 提交任务时池子会创建新的线程对象任务执行完毕归还线程对象到线程池下次调用时直接使用不需要创建 3. 如果提交任务时没有空闲线程也无法创建新的线程任务就会排队等待线程池类似于一个容器里面有线程需要用到线程时直接取即可用完还回去。 线程池有最大线程数量限制可以自己设置 1. 创建一个空池子 2. 提交任务时池子会创建新的线程对象任务执行完毕归还线程对象到线程池下次调用时直接使用不需要创建 3. 如果提交任务时没有空闲线程也无法创建新的线程任务就会排队等待
http://www.zqtcl.cn/news/296134/

相关文章:

  • 蓬莱网站建设哪家专业怎么样模仿网站
  • 网站建设有什么好处如何查看网站开发源码
  • 惠州做棋牌网站建设哪家好老域名新网站
  • 机械毕业设计代做网站如何快速模仿一个网站
  • seo网站推广优化就找微源优化网页设计自学要多久
  • 网站资源做缓存国外做饮料视频网站
  • 用asp.net做的购物网站西安手机网站制作
  • wordpress 自定义主题wordpress自带数据库优化
  • 电子商务网站建设与维护的考试用自己的电脑做网站划算
  • 微商招商网站源码wordpress怎么改后台
  • 哪些网站有搜索引擎作弊的社群营销平台有哪些
  • 建地方的网站前景苏州做视频网站广告公司
  • 制作网站的主题海口网站自助建站
  • dede二手车网站源码网络工程师
  • 吴桥网站新网站优化怎么做
  • 做网站要求什么条件0资本建设网站
  • 免费做网站排名洛阳软件开发公司有哪些
  • 网站搜索优化方法东莞seo全网营销
  • 广州微网站建设哪家好wordpress怎样将小工具放到左侧
  • 汕头网站搜索优化嘉兴网络项目建站公司
  • 怎么查询网站是什么时候做的网站app的意义
  • 曹妃甸网站建设合肥的房产网站建设
  • 怎么做网站前台二级区域网站名
  • 服务器租用相关网站一个空间怎么放两个网站吗
  • 每个城市建设规划在哪个网站南宁seo怎么做优化团队
  • 做资讯类网站ccd设计公司官网
  • 写作网站5妙不写就删除抚州建设网站
  • 沙田网站建设公司网站风格设计原则
  • 安徽省建设监理网站黑群晖可以做网站吗
  • 手机百度seo快速排名搜索引擎优化目标