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

重学java 45.多线程 下 总结 定时器_Timer

人开始反向思考

            —— 24.5.26

定时器_Timer

1.概述:定时器

2.构造:

        Timer()

3.方法:

        void schedule(TimerTask task, Date firstTime, long period)

                task:抽象类,是Runnable的实现类
                firstTime:从什么时间开始执行
                period:每隔多长时间执行一次,设置的是毫秒值

package S82ThreadTimer;import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;public class Demo222Timer {public static void main(String[] args) {Timer timer = new Timer();timer.schedule(new TimerTask() {@Overridepublic void run() {System.out.println("一切都会好的 我一直相信");}},new Date(),2000L);}
}

总结

等待唤醒

        wait()

                线程等待,等待的过程中,释放锁,需要其他线程调用notify去唤醒

        notify()

                唤醒一个等待的线程,如果有多个线程等待,随机一条唤醒

        notifyAll()

                 唤醒所有等待的线程

Lock锁

        1.概述 — 接口

        2.使用

                a.获取 — ReentrantLock

                b.方法               

                        lock() 获取锁

                        unlock() 释放锁

Callable

        1.概述

                接口,类似于Runnable,是实现多线程的第三种方式

        2.方法 -- call()

                设置线程任务,类似于run方法
                可以throws异常,还有返回值

线程池

        1.概述

                容器中有多条线程对象,来了线程任务,直接从线程池中获取线程对象,用完还回去

        2.获取

                static ExecutorService

                newFixedThreadPool(int nThreads)

        3.执行线程任务

                Future<?>submit(Runnable task)提交一个Runnable任务用于执行
                Future<T> submit(Callable<T> task) 提交一个Callable任务用于执行

        4.返回值

                Future接囗 — Vget() 用于获取call方法返回值

        5.关闭线程池

                void shutdown()启动有序关闭,其中先前提交的任务将被执行,但不会接受任何新任务

相关文章:

重学java 45.多线程 下 总结 定时器_Timer

人开始反向思考 —— 24.5.26 定时器_Timer 1.概述:定时器 2.构造: Timer() 3.方法: void schedule(TimerTask task, Date firstTime, long period) task:抽象类,是Runnable的实现类 firstTime:从什么时间开始执行 period:每隔多长时间执行一次…...

MongoDB(介绍,安装,操作,Springboot整合MonggoDB)

目录 MongoDB 1 MongoDB介绍 MongoDB简介 MongoDB的特点 MongoDB使用场景 小结 2 MongoDB安装 安装MongoDB 连接MongoDB MongoDB逻辑结构 MongoDB数据类型 小结 3 MongoDB操作 操作库和集合 操作文档-增删改 操作文档-查询 MongoDB索引 小结 4 SpringBoot整合…...

【数字移动通信】期末突击

文章目录 复习题一.简答题1、常用的移动通信系统有哪些?2、分别列出1G,2G,3G,4G的典型系统或标准&#xff1f;3、移动通信信道的基本特征&#xff1f;4、电波传播预测模型是用来计算什么量的&#xff0c;在选择传播预测模型时&#xff0c;主要考虑哪些因素&#xff1f;5、什么…...

数据库(5)——DDL 表操作

表查询 先要进入到某一个数据库中才可使用这些指令。 SHOW TABLES; 可查询当前数据库中所有的表。 表创建 CREATE TABLE 表名( 字段1 类型 [COMMENT 字段1注释] ...... 字段n 类型 [COMMENT 字段n注释] )[COMMENT 表注释]; 例如&#xff0c;在student数据库里创建一张studen…...

【Java EE】网络协议——HTTP协议

目录 1.HTTP 1.1HTTP是什么 1.2理解“应用层协议” 1.3理解HTTP协议的工作过程 2.HTTP协议格式 2.1抓包工具的使用 2.2抓包工具的原理 2.3抓包结果 3.协议格式总结 1.HTTP 1.1HTTP是什么 HTTP&#xff08;全称为“超文本传输协议”&#xff09;是一种应用非常广泛的应…...

Docker提示某网络不存在如何解决,添加完网络之后如何删除?

Docker提示某网络不存在如何解决&#xff1f; 创建 Docker 网络 假设现在需要创建一个名为my-mysql-network的网络 docker network create my-mysql-network运行容器 创建网络之后&#xff0c;再运行 mysqld_exporter 容器。完整命令如下&#xff1a; docker run -d -p 9104…...

C++ 红黑树

目录 1.红黑树的概念 2.红黑树的性质 3.红黑树节点的定义 4.红黑树的插入操作 5.数据测试 1.红黑树的概念 红黑树&#xff0c;是一种二叉搜索树&#xff0c;但在每个结点上增加一个存储位表示结点的颜色&#xff0c;可以是Red或Black。 通过对任何一条从根到叶子的路径上各个…...

PTA 6-4 配对问题

许多大学生报名参与大运会志愿者工作。其中运动场引导员需要男女生组队&#xff0c;每组一名男生加一名女生&#xff0c;男生和女生各自排成一队&#xff0c;依次从男队和女队队头各出一人配成小组&#xff0c;若两队初始人数不同&#xff0c;则较长那一队未配对者调到其他志愿…...

sklearn基础教程

scikit-learn是一个用于机器学习的Python库&#xff0c;提供了多种机器学习的方法和模型&#xff0c;以及数据预处理、特征选择、模型评估等功能。它简化了机器学习流程&#xff0c;并且具有易于使用和灵活的特点。 本教程将介绍sklearn的基础知识和常用功能&#xff0c;帮助你…...

MySQL入门学习-查询进阶.别名

别名&#xff08;Alias&#xff09;是为数据库中的表、列或表达式赋予的一个临时名称。使用别名可以使查询结果更具可读性&#xff0c;并且在复杂的查询中更方便地引用和处理数据。 在 MySQL 中&#xff0c;别名可以通过 AS 关键字来定义&#xff0c;例如&#xff1a; SELECT…...

【Rust日报】嵌入式 Rust:一份简化指南

EvilHelix 编辑器 EvilHelix 是一个采用 Vim 风格的模态编辑器&#xff0c;旨在提供快速且高效的编辑体验。它是 Helix 编辑器的一个分支&#xff0c;增加了 Vim binding&#xff0c;同时积极同步上游的特性&#xff0c;兼备了 Vim 和 Hexli 的优点&#xff1a; Vim 风格的模态…...

Web课外练习9

<!DOCTYPE html> <html> <head><meta charset"utf-8"><title>邮购商品业务</title><!-- 引入vue.js --><script src"./js/vue.global.js" type"text/javascript"></script><link rel&…...

rtsp协议分析

rtsp (real-time stream protocol)实时流媒体控制协议 属于基于文本的应用层协议&#xff0c;rtsp的底层协议可以是udp也可以是tcp ffmpeg 参数-rtsp_transport tcp 用于指定RTSP会话底层传输协议为TCP 本身并不传输流媒体数据&#xff0c;只是提供流媒体的控制&#xff0c;实…...

Spring Web MVC(2)

响应 Http响应的结果可以是数据也可以是静态页面可以针对响应设置状态码 Header信息 返回静态页面注解RestController和Controller 我们创建一个前端页面 package com.example.demo.demos.web.controller;import org.springframework.web.bind.annotation.RequestMapping; i…...

Python-图片旋转360,保存对应图片

#Author &#xff1a;susocool #Creattime:2024/5/25 #FileName:turn360 #Description: 会旋转指定的图像文件360度&#xff0c;并将每个旋转后的图像保存到指定目录&#xff0c;文件名以旋转角度命名。 from PIL import Imagedef rotate_and_save(image_path, output_dir) :# …...

JavaSE——集合框架二(1/6)-前置知识-可变参数、Collections工具类

目录 可变参数 Collections工具类 Collections的常用静态方法 实例演示 可变参数 可变参数 就是一种特殊形参&#xff0c;定义在方法、构造器的形参列表里&#xff0c;格式是&#xff1a;数据类型...参数名称 可变参数的特点和好处 特点&#xff1a;可以不传数据给它&am…...

我用LLaMA-Factory微调大模型来实现商品评论情感分析,准确率高达91.70%

大家好&#xff0c;我是程序锅。 最近在modelscope上闲逛的时候&#xff0c;在数据集板块发现有一个商品评论情感预测数据集。这个数据集源自一个比赛&#xff0c;它的目的是为了预测电商平台顾客的评论是好评还是差评。 数据示例如下所示&#xff08;其中0代表差评&#xff…...

四大进制--详解--以及进制转换规则

进制介绍 对于整数, 有四种表达方式: 二进制BIN: 0,1 , 满2进1.以0b或0B开头 所谓2进制就是使用0和1来表示一个数, 满2进1如果在开发中看到有这种写法: int n1 0b1010; 这种写法没有错, 这是二进制的一种表示方式 十进制DEC: 0-9, 满10进1 十进制就是0-9来表示一个数, 满10进…...

谈谈API和人工智能领域的开发和使用以及AI大模型开发进程。

API,全称为Application Programming Interface,即应用程序编程接口,是一些预先定义的函数。 它的主要目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而无需访问源码,或理解内部工作机制的细节。API函数包含在操作系统的动态连接库文件中,例如Win…...

用Python Pygame做的一些好玩的小游戏

有些游戏的代码比较长就不公布了 1.简简单单 1.疯狂的鸡哥 你要准备的图片&#xff1a; 命名为&#xff1a;ji.png 代码&#xff1a; import pygame import random as r pygame.init() pygame.display.set_caption(aaa) pm pygame.display.set_mode((800,600))class Ls(py…...

hive strict 严格模式

Hive的严格模式&#xff08;Strict Mode&#xff09;是一道经典的面试题。它的核心是一个安全防护机制&#xff0c;通过限制执行高风险的查询&#xff0c;来防止单个“烂SQL”拖垮整个集群。 &#x1f512; 严格模式禁止的三大类查询 在 hive.mapred.modestrict 模式下&#…...

AWS CDN 配置:实现非 www 域名自动跳转到 www.xxx.com

1. 为什么需要将非 www 域名跳转到 www 域名&#xff1f; 很多网站在运营过程中都会遇到一个经典问题&#xff1a;用户可能通过带 www 的域名&#xff08;如 www.example.com&#xff09;访问&#xff0c;也可能直接输入不带 www 的域名&#xff08;如 example.com&#xff09;…...

春联生成模型-中文-base效果实测:输入‘平安‘、‘富贵‘,对联寓意满满

春联生成模型-中文-base效果实测&#xff1a;输入平安、富贵&#xff0c;对联寓意满满 1. 模型效果初体验 春节将至&#xff0c;家家户户都开始准备贴春联。传统春联创作需要深厚的文学功底&#xff0c;而如今AI技术让这一过程变得简单有趣。今天我们要实测的是一款基于阿里达…...

CenterFusion实战:从毫米波雷达与视觉融合到3D目标检测

1. 为什么需要毫米波雷达与视觉融合 在自动驾驶领域&#xff0c;传感器就像车辆的"眼睛"。单一的视觉传感器在光线条件良好时表现不错&#xff0c;但遇到夜间、雨雪天气或强光照射等情况时&#xff0c;性能就会大幅下降。毫米波雷达则不受这些环境因素影响&#xff0…...

OBS多平台直播插件:为什么选择obs-multi-rtmp进行同步推流?

OBS多平台直播插件&#xff1a;为什么选择obs-multi-rtmp进行同步推流&#xff1f; 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 你是否曾经想过&#xff0c;如何将你的直播内容同时推…...

终极显卡驱动清理指南:DDU工具完整使用教程

终极显卡驱动清理指南&#xff1a;DDU工具完整使用教程 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-drivers-uninstaller Displ…...

PDF提取不求人:MinerU镜像开箱即用,支持GPU加速

PDF提取不求人&#xff1a;MinerU镜像开箱即用&#xff0c;支持GPU加速 1. 引言&#xff1a;告别繁琐的PDF提取工作 在日常工作和研究中&#xff0c;我们经常需要从PDF文档中提取内容。无论是学术论文、技术报告还是商业文档&#xff0c;PDF格式因其良好的排版保持能力而广受…...

别再为离线推送角标烦恼了!手把手教你搞定uniPush2.0的badgeClass配置(附正确路径查找方法)

深度解析uniPush2.0角标配置&#xff1a;从原理到实战避坑指南 在移动应用开发中&#xff0c;推送功能的重要性不言而喻。而推送消息的角标显示&#xff0c;作为用户体验的关键细节&#xff0c;却常常成为开发者头疼的问题。特别是当应用需要适配不同厂商设备时&#xff0c;角标…...

别再死记硬背了!用Python代码复现Photoshop 27种混合模式(附完整源码)

用Python代码实现Photoshop混合模式的终极指南 在数字图像处理领域&#xff0c;Photoshop的混合模式就像魔术师的调色板&#xff0c;能够创造出令人惊叹的视觉效果。但你是否想过这些看似神秘的混合效果背后&#xff0c;其实是一系列精确的数学公式在起作用&#xff1f;本文将带…...

为什么你的OpenClaw做不好自动化测试?

&#x1f4dd; 面试求职&#xff1a; 「面试试题小程序」 &#xff0c;内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试&#xff0c;命中…...