C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。他是从C和C++派生而来的,其与C/C++语法非常相似,并依附于.NET虚拟机的强大类库支持,各方面对强于C/C++.基本的流程控制标准输入输出:using
......
439
0
0
2023-02-14
按钮与编辑框的使用using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using Sy
......
623
0
0
2023-02-14
校验数字的表达式: 常用的针对数字的匹配符号。Regex(@"^[0-9]*$"); // 匹配0-9数字
Regex(@"^\d{n}$"); // 匹配出现过n次的数字
Regex(@"^\d{n,}$"); // 匹
......
555
0
0
2023-02-14
C#中的数组是由System.Array类衍生出来的引用对象,因此可以使用Array类中的各种方法对数组进行各种操作。一维数组:using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace Console
......
444
0
0
2023-02-14
目录委托的使用案例事件的使用案例带参数的事件案例回调函数的使用案例委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性。事件是对委托的封装。如果不进行封装,让委托暴露给调用者,调用者就可以把委托变量重新引用到新
......
487
0
0
2023-02-12
目录C#调用python脚本方式一方式二方式三方式四方式五C#调用python脚本在平常工程项目开发过程中常常会涉及到机器学习、深度学习算法方面的开发任务,但是受限于程序设计语言本身的应用特点,该类智能算法的开发任务常常使用Python语言开发,所以在工程实践过程中常常会遇到多平台程序部署问题。本文总结了C#调用Python程序的各种方法,希望能够给各位读者
......
953
0
0
2023-02-06
在项目开发过程中,我们经常会访问第三方接口,如我们需要接入的第三方接口是Web API,这时候我们就需要使用HttpHelper调用远程接口了。示例中的HttpHelper类使用Log4Net记录了每次调用的请求内容和响应内容的日志,并且每条日志都带上了链路ID和标识,这样方便我们在排查问题时能快速的找到当时的请求和响应内容,进而定位分析问题。大家在使用的时
......
489
0
0
2023-02-05
目录介绍Version 1 - 非线程安全Version 2 - 简单的线程安全Version 3 - Double-check locking的线程安全Version 4 - 不完全懒汉式,但不加锁的线程安全Version 5 - 完全懒汉实例化Version 6 - 使用.NET 4 Lazy type 特性性能 VS 懒汉式Exception
......
462
0
0
2023-02-03
目录一、背景二、实现原理1. 基本思路2. 案例演示3. 自定义注入三:总结一、背景前段时间在训练营上课的时候就有朋友提到一个问题,为什么 Windbg 附加到 C# 程序后,程序就处于中断状态了?它到底是如何实现的?其实简而言之就是线程的远程注入,这一篇就展开说一下。二、实现原理1. 基本思路WinDbg 在附加进程的时候,会注入一个线程到 C#
......
402
0
0
2023-02-03
目录01.点明观点02.C#中,using的两个作用03.using如何实现资源释放04.实践探索05.总结01.点明观点C#中,非托管资源使用之后必须释放,而using()是使用非托管资源的最佳方式,可以确保资源在代码块结束之后被正确释放,并且代码更简洁。这里说的非托管资源指的是实现IDisposable或IAsyncDisposable接口的类。usin
......
360
0
0
2023-02-01
1.Overview经常研究.NET源码库的小伙伴会经常看到一个关键字volatile,那它在开发当中的作用是什么呢?我们一起来看看官方文档里是怎么描述的,如下:“volatile 关键字指示一个字段可以由多个同时执行的线程修改。出于性能原因,编译器,运行时系统甚至硬件都可能重新排列对存储器位置的读取和写入。声明为 volatile 的字段将从某些类型的优化
......
543
0
0
2023-01-09
以下文章来源于精致码农 ,作者liamwang现代应用程序广泛使用的是基于任务的异步编程模式(TAP),历史的 EAP 和 AMP 模式已经过时不推荐使用。今天继续总结一下 TAP 的异步操作,比如取消任务、报告进度、Task.Yield()、ConfigureAwait() 和并行操作等。虽然实际 TAP 编程中很少使用到任务的状态,但它是很多 TAP 操
......
382
0
0
2023-01-09
以下文章来源于CSharp编程大全 ,作者zls365Stream.Read 方法当在派生类中重写时,从当前流读取字节序列,并将此流中的位置提升读取的字节数。语法:public abstract int Read(byte[] buffer, int offset, int count)参数:buffer: 字节数组。此方法返回时,该缓冲区包含指定的字符数组
......
472
0
0
2023-01-09
一、概要本文主要讲解在c#中lock关键字的用法以及需要注意的坑。帮助大家避免使用不当造成的bug。作用:lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断。它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。这是通过在代码块运行期间为给定对象获取互斥锁来实现的。在多线
......
565
0
0
2023-01-09
一、概要大家好,本次继续分享自己的学习经历。本文主要分享Task异步编程内容,如果能帮助大家希望多多关注文章末尾的微信公众号和知乎三连。各位举手之劳是对我更新技术文章最大的支持。二、详细内容1.同步异步同步操作会在返回调用者之前完成它的工作异步操作会在返回调用者之后去做它的工作异步的方法更为少见,会启用并发,因为他的工作会与调用者并行执行目前见到的大部分的异
......
516
0
0
2023-01-09