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

云南定制化网站建设wordpress只备份数据

云南定制化网站建设,wordpress只备份数据,深圳外贸网站建设,买购网中国10大品牌网lock是一种语言级别的关键字,用于实现线程同步和互斥。它提供了一种简单的方式来确保多个线程不会同时访问共享资源,从而避免竞争条件和数据不一致的问题。 作用: 1、避免并行运算中,共享数据的的读写安全问题; 2、并…

lock是一种语言级别的关键字,用于实现线程同步和互斥。它提供了一种简单的方式来确保多个线程不会同时访问共享资源,从而避免竞争条件和数据不一致的问题。

作用:

1、避免并行运算中,共享数据的的读写安全问题;
2、并行执行时,在锁的位置只有一个程序可以获得锁,其他程序无法获得;
3、锁的出现使得并行执行得地方在锁的位置执行串行;

分类:

1:互斥锁

最常见的锁类型之一。它确保在任何时刻只有一个线程可以访问被保护的资源,其他线程必须等待锁的释放才能继续执行

2:读写锁

允许多个线程同时读取共享资源,但只有一个线程可以写入共享资源

3:自旋锁

一种忙等待的锁,当线程尝试获取锁时,如果发现锁已经被占用,它会一直循环等待直到锁可用

4:条件变量

5:信息量

举个官方的例子:

using System;
using System.Threading.Tasks;public class Account
{//账户余额锁private readonly object balanceLock = new object();//账户余额private decimal balance;public Account(decimal initialBalance) => balance = initialBalance;//扣除金额public decimal Debit(decimal amount){if (amount < 0){throw new ArgumentOutOfRangeException(nameof(amount), "The debit amount cannot be negative.");}decimal appliedAmount = 0;//确保多个线程不能同时修改余额lock (balanceLock){if (balance >= amount){balance -= amount;appliedAmount = amount;}}return appliedAmount;}//存入金额public void Credit(decimal amount){if (amount < 0){throw new ArgumentOutOfRangeException(nameof(amount), "The credit amount cannot be negative.");}lock (balanceLock){balance += amount;}}public decimal GetBalance(){lock (balanceLock){return balance;}}
}class AccountTest
{static async Task Main(){var account = new Account(1000);//创建100个任务并行对账户进行更新var tasks = new Task[100];for (int i = 0; i < tasks.Length; i++){tasks[i] = Task.Run(() => Update(account));}await Task.WhenAll(tasks);Console.WriteLine($"Account's balance is {account.GetBalance()}");// Output:// Account's balance is 2000}static void Update(Account account){decimal[] amounts = [0, 2, -3, 6, -2, -1, 8, -5, 11, -6];foreach (var amount in amounts){if (amount >= 0){account.Credit(amount);}else{account.Debit(Math.Abs(amount));}}}
}

对Blance进行加锁,然后创建100个Taks并行执行任务,保证在获取Balance的时候并不会线程之间混乱存取,保证秩序,当大于0的时候就存款,当小于0的时候就取款,所以最终结果就是2000

http://www.yayakq.cn/news/153981/

相关文章:

  • 做视电影网站赚钱吗微信分销平台是什么意思
  • 江门网站制作方案定制大学做兼职英语作文网站
  • 广州建设网站公司哪个济南兴田德润有活动吗python用于网站开发
  • 网站做任务 炸金花建设通网站是筑龙网的吗
  • 江苏省住房和建设部网站首页手机网站 等比缩放
  • 询价网站哪个好广州全网络营销
  • wordpress普通用户提权广东seo推广方案
  • 专注高端品牌网站的设计常州网络排名优化
  • 建站工具phpcms 多语言网站
  • 有什么网站帮做邀请函设计的做普通网站公司
  • 波音网站开发2021年十大购物网站排名
  • 如何选择网站托管公司网络安全方案设计步骤
  • 网站建设套餐报价方案.net网站开发工具介绍
  • cf刷枪网站怎么做的区块链网站可以做哪些活动
  • 修改网站描述国内创意网页设计
  • 江苏建设工程招投标网站wordpress导入文章
  • 宜昌商城网站建设做博客网站什么空间好
  • 新闻类网站怎么做wordpress 主机安装教程
  • 网站内页模板公司文化墙设计
  • 用淘宝做公司网站安徽元鼎建设公司网站
  • 商城网站建设运营合同书网页制作超链接代码
  • 网站访问统计js代码河北邢台做移动网站
  • 网站建设常州麦策电商专门做ppt会员网站
  • 公司网站设计与开发字节跳动员工待遇
  • 赚钱做任务的网站有哪些重庆大渡口营销型网站建设公司推荐
  • 做外贸必须有网站吗唐山电商网站建设
  • 东莞网站制作智能 乐云践新网站界面类型
  • 秦皇岛陵县网站建设顺德做网站公司
  • 模板建网站费用做有奖竞猜网站违法吗
  • 如何创建网站和域名如何做网站不被坑