日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 转账 锁_Java多线程 多个人转账发生死锁

發布時間:2024/10/8 java 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 转账 锁_Java多线程 多个人转账发生死锁 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java多線程 多個人轉賬發生死鎖

Java多線程 多個人轉賬發生死鎖

文章目錄多個人轉賬發生死鎖

多個人轉賬發生死鎖

人數多的時候, 依然會發生死鎖, 遵循墨菲定律.

雖然人多的時候發生死鎖的幾率不高, 但是危害大.

此節的代碼中, 需要用到上一節的代碼, 鏈接如下.

https://javaweixin6.blog.csdn.net/article/details/108475207

此節的代碼如下 :

定義賬戶的數組, 用于給不同的賬戶轉賬.

并且給每個賬戶賦初始值的錢為1000.

在TransferThread內部類中繼承了Thread類, 重寫run方法, 執行NUM_ITERATIONS次數的轉賬操作. 并且每次轉賬的收款方 , 轉賬方,轉賬金額都是隨機的. 在run方法中調用TransferMoney.transferMoney轉賬方法

接著開啟NUM_THREADS個數(20個數)的線程去執行run方法中的任務

package com.thread.deadlock;

import java.util.Random;

/**

* 類名稱:MultiTransferMoney

* 類描述: 多人轉賬發生死鎖demo

*

* @author: https://javaweixin6.blog.csdn.net/

* 創建時間:2020/9/9 7:13

* Version 1.0

*/

public class MultiTransferMoney {

//賬戶的總數量

private static final int NUM_ACCOUNTS = 500;

//每個賬戶初始的余額

private static final int NUM_MONEY = 1000;

private static final int NUM_ITERATIONS = 1000000;

private static final int NUM_THREADS = 20;

public static void main(String[] args) {

Random random = new Random();

//定義轉賬的賬戶數組

TransferMoney.Account[] accounts = new TransferMoney.Account[NUM_ACCOUNTS];

for (int i = 0; i < accounts.length; i++) {

//給每個賬戶數組中的元素定初始值

accounts[i] = new TransferMoney.Account(NUM_MONEY);

}

class TransferThread extends Thread {

@Override

public void run() {

//每一個線程都進行隨機的轉賬

for (int i = 0; i < NUM_ITERATIONS; i++) {

//隨機獲取轉賬方索引

int fromAccount = random.nextInt(NUM_ACCOUNTS);

//隨機的獲取收款方

int toAccount = random.nextInt(NUM_ACCOUNTS);

//隨機獲取轉賬金額

int amount = random.nextInt(NUM_MONEY);

//執行轉賬的方法

TransferMoney.transferMoney(accounts[fromAccount],accounts[toAccount],amount);

}

}

}

//開啟20個線程進行轉賬

for (int i = 0; i < NUM_THREADS; i++) {

new TransferThread().start();

}

}

}

運行程序后, 幾秒鐘之后, 就出現了死鎖, 控制臺的紅色按鈕一直亮著, 但也沒再打印東西, 說明出現了死鎖.

這也就說明了, 即使是用戶量多,只要有發生死鎖的風險,隨著時間的推移, 就會出現死鎖. 一旦發生 , 就是造成系統的崩潰, 嚴重影響了業務.

在業務開發中, 寫的程序避免發生死鎖,這樣才是最可靠的.

Java多線程 多個人轉賬發生死鎖相關教程

總結

以上是生活随笔為你收集整理的java 转账 锁_Java多线程 多个人转账发生死锁的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 嫩草视频在线观看视频 | 中文字幕第3页 | 中文字幕在线免费观看视频 | 黄色影音 | 人人人妻人人澡人人爽欧美一区 | 夫妻露脸自拍[30p] | tube国产麻豆 | 99中文字幕在线观看 | 国产99久| 中文字幕15页 | 少妇精品一区二区 | 性xxx法国hd极品 | 国产一区二区久久 | 三级免费网站 | 中国女人一级一次看片 | 亚洲青色在线 | 亚洲 欧美 激情 另类 | 国产福利精品在线 | 国产在线高潮 | 日本精品一区视频 | 欧美影视一区二区 | 欧美精品一区二区三区在线 | 歪歪视频在线观看 | 亚洲三区在线观看无套内射 | 欧美视频免费在线 | 国产91丝袜在线播放九色 | 黄色网址在线免费观看 | 一区二区三区免费观看 | 国产精品久久久久久影视 | 欧美日韩在线观看一区二区三区 | 国产特级av | 少妇激情一区二区三区视频 | 毛片视频免费观看 | 黑人黄色大片 | 超碰在线香蕉 | 一级黄色大片网站 | 亚洲AV无码精品自拍 | 亚洲免费a视频 | 日韩色图片 | 九色在线视频 | 国产视频99 | 在线观看网页视频 | 91国在线啪 | 亚洲精品永久免费 | 99精品在线免费观看 | 香港三级在线视频 | caobi视频 | 国产大片在线观看 | 人妖粗暴刺激videos呻吟 | 日韩精品在线免费观看视频 | 秘密基地电影免费版观看国语 | 国产视频四区 | 免费av软件| 日韩精品一区二区电影 | 女人av在线 | 欧美一区二区人人喊爽 | 国产成人手机视频 | 狼性av懂色av禁果av | 国产一区视频在线播放 | 按摩ⅹxxx性hd中国 | 特黄一区二区三区 | 久久久久久免费观看 | 亚洲欧美日韩在线播放 | 粉嫩av一区二区白浆 | 天天夜碰日日摸日日澡性色av | 中文字幕一区二区三区四区免费看 | jul023被夫上司连续侵犯 | 天天操夜夜操夜夜操 | 高潮毛片无遮挡 | 久热精品在线 | 美女100%露胸无遮挡 | 国产内射老熟女aaaa∵ | 99久久伊人 | 国产又爽又黄的激情精品视频 | 久色91| 麻豆人妻少妇精品无码专区 | 亚洲综合在 | 精品久久久久久久中文字幕 | 日韩美女一级片 | 福利国产在线 | 欧美三区在线观看 | av大片在线免费观看 | www在线观看视频 | 国产一区二区高清视频 | 91丝袜国产在线播放 | 欧美三级一级 | 亚洲第一天堂久久 | 国产在线h | 欧美精品国产一区二区 | 在线一区观看 | 国产女教师一区二区三区 | 在线观看亚洲网站 | 天堂欧美| 精品国产乱码久久久久久鸭王1 | 99re6在线精品视频免费播放 | 亚洲性生活网站 | 91丨porny在线 | 国语粗话呻吟对白对白 | 国内成人精品视频 |