编辑
2025-09-28
C#
00

摘要

单例模式是一种用于限制一个类只能创建一个对象的设计模式。在C#中,我们通过将类的构造函数设置为私有,然后通过一个公有的静态方法来获取类的唯一实例,以此来实现单例模式。

正文

单例模式的应用场景

单例模式通常用于那些系统中只需要一个实例的场景,例如:

  • 用于访问资源的类,例如文件系统、打印机等。
  • 用于保存系统的状态的类,例如系统的配置信息。
  • 用于提供服务的类,例如线程池、缓存等。

例子1:日志管理器

在许多应用中,我们需要一个全局的日志管理器来记录应用的运行情况。这个日志管理器只需要一个实例,我们可以使用单例模式来实现。

编辑
2025-09-27
C#
00

在这篇文章中,我们将探讨如何使用 TcpListener 在 C# 中实现一个简单的多用户服务器。通过一个实际例子,我们会了解 TcpListener 的常用属性和方法,并且我们将创建一个基本的服务器应用,可以监听客户端连接和处理客户端消息。

什么是 TcpListener?

TcpListener 是 .NET 提供的一个用于监听 TCP 网络连接的类。它能侦听传入的客户端连接请求,并与这些客户端通信。

TcpListener 常用方法

方法

  • Start(): 启动 TcpListener 以准备侦听传入的连接请求。
  • Stop(): 关闭 TcpListener
  • AcceptTcpClient(): 阻塞并等待传入连接尝试。
  • AcceptTcpClientAsync(): 异步等待并接受一个传入的连接尝试。
  • BeginAcceptTcpClient(): 异步地开始传入连接尝试的操作,并选择回调方法来处理它。
  • EndAcceptTcpClient(): 结束异步客户端连接尝试。

界面

image.png

编辑
2025-09-27
C#
00

在这篇文章中,我们将探讨如何使用 C# 中的 TcpClient 类来创建一个简单的客户端应用程序。这个示例程序可以连接到服务器,发送消息,并接收服务器的响应。我们将详细讨论 TcpClient 的主要属性和方法,并提供一个带有详细注释的示例代码。

TcpClient 类简介

TcpClient 类提供了简单的方法来连接到 TCP 网络服务。通过 TcpClient,我们可以与服务器建立连接,发送和接收数据。该类封装了 TCP 连接的创建和管理,简化了与服务器进行网络通信的过程。

主要方法

  • Connect(string hostname, int port): 连接到指定主机名和端口号的远程主机。
  • Connect(IPAddress[] ipAddresses, int port): 连接到指定 IP 地址数组和端口号的远程主机。
  • GetStream(): 获取用于发送和接收数据的网络流。
  • Close(): 关闭 TcpClient 并释放所有资源。

界面设计

image.png

编辑
2025-09-27
C#
00

在Windows系统中,查看打印机队列信息可以通过Windows Management Instrumentation (WMI) 实现。本文将详细介绍如何使用C#代码读取打印机队列,并提供多个示例代码。

前提条件

在开始之前,请确保您的开发环境已经安装了.NET框架,并且您对C#编程有基本的了解。

基本示例

以下是一个基本示例,展示了如何使用WMI读取打印机队列信息。此代码将显示所有打印队列中等待打印的文档信息。

Nuget 安装

C#
System.Management

image.png

编辑
2025-09-27
C#
00

SM2是由中国国家密码管理局制定的公钥密码算法,属于国家密码标准之一。SM2算法基于椭圆曲线密码学,兼具安全性和高效性,被广泛应用在金融、电子政务和电子商务等领域。

特点

  1. 安全性:SM2基于椭圆曲线密码学,提供高强度的安全保障。
  2. 高效性:在相同的安全强度下,SM2比RSA和DSA更加高效,计算复杂度较低。
  3. 国家标准:SM2是中国国家密码标准GB/T 32918,具有国家认可的权威性。

应用场景

  1. 数字签名:用于身份验证和不可否认性。
  2. 数据加密:用于保护敏感信息的传输与存储。
  3. 密钥交换:用于安全的密钥分发和交换过程。

代码示例

第三方库BouncyCastle

image.png