您好,登錄后才能下訂單哦!
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(); } }
執行結果
關于Java 如何使用多線程調用類的靜態方法問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。