- 博客(9)
- 资源 (12)
- 收藏
- 关注
原创 C#线程安全
在C#中,线程安全是一个非常重要的概念,下面我们将深入了解线程安全的概念、常见的线程安全问题以及一些解决方法。线程安全的类型(Thread-Safe Types):线程安全的类型是指可以安全地访问和修改数据的类型。通过使用互斥锁、原子操作、并发集合和线程安全的类型等方法,我们可以解决常见的线程安全问题,保证程序的正确性、可靠性和稳定性。线程安全是一个非常重要的概念,它指的是当多个线程并发访问共享资源时,程序仍然能够保持正确性、可靠性和稳定性的能力。通过使用原子操作,我们可以避免竞争条件的问题。
2023-05-29 01:04:02
2604
2
原创 C#异步多线程
在上面的示例中,我们定义了PerformAsyncTask和LongRunningIOOperation方法,PerformAsyncTask方法是异步的,并执行LongRunningIOOperation方法,LongRunningIOOperation方法模拟了一个长时间的IO操作。最后,我们得到异步任务的运行结果。在TAP模型中,我们使用async/await关键字来进行异步编程,其中async关键字表示当前方法是异步的,await关键字表示要等待异步操作完成,然后才能继续执行下一步操作。
2023-05-29 01:01:51
344
1
原创 OPC UA协议
例如,OPC UA可以实现机器设备之间的无缝连接和数据共享,帮助制造商实现智能化和自动化的生产过程,提高生产效率和质量。OPC UA(Open Platform Communications Unified Architecture)是一种面向工业自动化系统的通信协议,它提供了一种跨平台的、可靠的、安全的、灵活的、标准化的、互操作的数据传输和通信机制。通过使用OPC UA,可以为不同的设备和应用程序提供标准化、可靠、安全、灵活和互操作的数据传输和交换,从而实现更加智能和高效的生产过程和物联网应用。
2023-05-29 01:01:34
2312
1
原创 nvarchar 和varchar区别
类型不同varchar是非Unicode可变长度类型,nvarchar是Unicode编码可变长度类型长度不同它们两者的最大长度不一样,nvarchar的最大值是4000,varchar最大值是8000存储不同varchar能存储的字节数就是它的长度,nvarchar能存储的字节数是它的长度乘2总结总的来说,我是比较推崇使用nvarchar有人说,varchar比nvarchar更省空间,应该更多的用varchar。但是我不是很赞同这个观点,首先,现在空间相对来.
2021-03-10 14:01:36
485
2
转载 给开发者的13条建议
取个好名字不管是包名,类名还是函数方法和变量,不要随意命名,像什么 foo, bar, a,b,c 这种没有任何意义的名字会污染你的整个代码先构思再写代码拿到一个需求最开始是分析需求,拆解问题,将大问题拆解为更小问题,思路清晰了代码写起来才快。能用Google就不用百度百度搜出来的东西一是广告太多,难以辨识,二是质量太差,容易被带偏。写注释“最好的注释就是代码本身”,这句话不是你不写注释的借口,相信我你的代码时间久了自己都不知道什么意思。必要的地方加上注释不仅方便别人理解你的代码,也方便自己。
2021-01-18 17:33:22
233
原创 C#对接银行接口总结
文章目录前言一、对接分析1.微信2.支付宝3.中国建设银行4.中国银行5.信合银行6.中国农业银行7.光大银行总结前言在开发工作中,也对接了一些银行,第三方支付接口,今天总结一下。一、对接分析微信支付宝中国建设银行中国银行信合银行中国农业银行光大银行1.微信微信对接基本不用说,很流畅,遇到技术问题一般是开发者自己的问题需要自己多注意,生态也很好基本问题都能搜索到。申请公众号或商户的过程中如果使用异常资料的话,或许你会和微信方纠缠很长时间。比如开户名称和营业执照名称不对应,这
2021-01-08 14:57:03
3815
10
原创 C#pdf电子发票转图片
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、所需要的包?二、使用步骤总结前言提示:最近对接了百旺的电子发票,有个需求是要在移动端上展示电子发票图片,结果发现百旺提供的是pdf文件。提示:以下是本篇文章正文内容,下面案例可供参考一、所需要的包? 我们使用Nuget包管理工具下载安装PdfiumViewer、PdfiumViewer.Native.x86.v8-xfa这两个包。二、使用步骤代码如下(示例):public static class
2021-01-05 12:34:35
1695
原创 Vue输入金额格式
Vue输入金额格式<input ref="content" type="text" :disabled="disabled" @input="handleAmountChange" v-model.number.trim="totalval" />代码如下(示例):handleAmountChange(e) { //过滤e字符 e.target.value = e.target.value.replace("e", ""); //判断输
2020-09-19 10:12:14
3412
原创 Vue微信公众号
微信公众号开发笔记1.微信授权流程需要有一个微信认证过的微信服务号,还要有一个H5的项目,在此开发过程中代码没有引入任何类库或者js文件,都是用http请求完成操作,如果过程中出现问题,请参考微信官方文档根据微信公众号APPId获取授权码codehttps://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&red...
2020-01-13 14:24:54
2929
SVN客户端.zip
2020-08-18
动态库注册工具.exe
2020-08-18
loki-windows-amd64.exe.zip
2020-07-14
loki-canary-windows-amd64.exe.zip
2020-07-14
logcli-windows-amd64.exe.zip
2020-07-14
VSCode-win32-x64-1.38.0.zip
2020-01-16
MultiDesk.rar
2020-01-16
超级通信调试工具.exe
2020-01-16
C#Model生成器(源码版)可自己编译生成
2020-01-13
promtail-windows-amd64.exe.zip
2010-01-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人