Java 使用多线程调用类的静态方法的示例
作者:Marydon 发布时间:2021-10-31 21:29:20
标签:java,多线程,调用,静态方法
1.情景展示
静态方法内部实现:将指定内容生成图片格式的二维码;
如何通过多线程实现?
2.分析
之所以采用多线程,是为了节省时间
3.解决方案
准备工作
logo文件
将生成的文件保存在F盘test目录下
代码实现
/**
* 多线程测试类
* @explain 生成图片格式的二维码采用多线程实现
* @author Marydon
* @creationTime 2018年11月23日下午3:15:39
* @version 1.0
* @since
* @email marydon20170307@163.com
*/
public class MultiThreadTest implements Runnable {
// 私有属性:线程名称
private String threadName;
// 有参构造方法
public MultiThreadTest(String threadName) {
this.threadName = threadName;
}
/**
* 线程启动后,将要执行的操作
*/
@Override
public void run() {
// 二维码内容
String data = "";
// 图片名称
String fileName = "";
// 二维码的logo
File logoFile = new File("d:/ewm.jpg");
// 线程启动后,执行100次
for(int i = 0; i < 100; i++) {
data = threadName + "Marydon" + i;
fileName = threadName + "博客园" + i;
// 生成二维码
BufferedImage image = QRcodeUtils.createQRCodeWithLogo(data, logoFile);
// 创建图片文件(二维码)
File qrcodeFile = new File("f:/test/" + fileName + ".jpg");
// 以流的形式写入到该文件中
ZxingQrcode.writeToFile(image, qrcodeFile);
}
System.out.println(threadName + "执行结束!");
}
}
测试:依次启动100个线程,每个线程生成100个图片
public static void main(String[] args) {
// 依次启动100个线程
for (int i = 1; i <= 100; i++) {
new Thread(new MultiThreadTest("线程" + i)).start();
}
}
执行结果
来源:https://www.cnblogs.com/Marydon20170307/p/10009094.html


猜你喜欢
- 这里使用Spring Boot 2.7.4版本,对应Spring Security 5.7.3版本本文样例代码地址: spring-secu
- 本例是利用C#中的性能计数器(PerformanceCounter)监控网络的状态。并能够直观的展现出来涉及到的知识点:Performanc
- 一.安装在 IDEA(2019)的 setting 的 Plugins 的 Marketplace 中搜索 leetcode,即可以找到该插
- 整理文档,搜刮出一个spring boot实现过滤器和 * demo ,稍微整理精简一下做下分享。 * 定义:@WebServletpubl
- Unsupported major.minor version 51.0解决办法今天偶然间同事遇到一个问题,也加深了自己对eclipse中b
- 从一个问题引入如果你以前接触过C语言,那么对下面的这段代码一定很熟悉:#include <stdio.h>int main(vo
- 在上一篇《Android仿微信滑动弹出编辑、删除菜单效果、增加下拉刷新功能》里,已经带着大家学习如何使用SwipeMenuListView这
- 之前项目总会遇到很多搜索框类的功能,虽然不是很复杂,不过每次都要去自己处理数据,并且去处理搜索框的变化,写起来也比较麻烦,今天来做一个比较简
- 在[高并发Java 二] 多线程基础中,我们已经初步提到了基本的线程同步操作。这次要提到的是在并发包中的同步控制工具。1. 各种同步控制工具
- 面对一个项目,对于Android应用开发框架的选择,我想过三种方案:1.使用Loader + HttpClient + GreenDao +
- 1、输出矩形以此矩形案例(4行,9列的矩形)为例public static void main(String[] args) {  
- 存储的可选项Android 的文件系统类似于其他平台的基于磁盘的文件系统。包括以下几种存储类别:App 私有的存储空间共享的存储空间Pref
- 本文介绍了springboot前后台数据交互的示例代码,分享给大家,具体如下:1.在路径中传递数据,比如对某个数据的id:123前台发送:格
- 在Servlet2.5中,我们要实现文件上传功能时,一般都需要借助第三方开源组件,例如Apache的commons-fileupload组件
- 如下所示:import java.util.Scanner;public class Main{public static void mai
- 由于我们在eclipse ee中把项目部署在web端经常会出现报404错误。原因为:404状态码是一种http状态码,其意思是: 所请求的页
- 一、Collections说明:Collcetions是集合框架中的工具,特点是方法都是静态的。二、Collections中的常见方法1,对
- Scrollview标题栏滑动渐变仿京东样式(上滑显示下滑渐变消失)/** * @ClassName MyScrollView * @Aut
- 一、单例模式我们先来看看两种创建单例模式的示例代码。1、饿汉式 饿汉式创建单例模式是在程序里面直接初始化了一个对象实例:class
- 本文实例为大家分享了OpenGL绘制Bezier曲线的具体代码,供大家参考,具体内容如下项目要求:– 使用鼠标在屏幕中任意设置控制点,并生成