leafcxy


  • 首页

  • 归档

  • 标签

couchdb

发表于 2025-07-24 15:45:04
字数统计 511

CouchDB是一个开源的面向文档的数据库管理系统,建立于 C++ 之上。

阅读全文 »

github-actions

发表于 2025-07-24 15:44:00
字数统计 384

GitHub Actions是GitHub平台提供的一种持续集成和持续部署(CI/CD)工具。它允许开发者在GitHub上自动化执行各种任务,如构建、测试、部署等。

阅读全文 »

jekyll-timezone

发表于 2025-07-24 15:40:50
字数统计 1349

Jekyll的时区和时间 2019-12-02 07:00:00 +0800 | 建站 | Jekyll 时区 GitHub Pages 在填写博文Front Matter里的日期时间date变量时如果不带时区字段,一律视为UTC标准时+0000时区,如果要填写其他时区的时间必须指明时区,类似这样2019-12-02 07:00:00 +0800。在_config.yml设置修改timezone变量只关乎日期时间date的显示效果,而不影响真正的时间值。下面详述:

阅读全文 »

WaitCallback

发表于 2025-07-24 13:08:14
字数统计 250

WaitCallback 委托一般用于将方法异步执行到线程池线程上。线程池是一组可重用的线程,可以在需要时分配线程来执行工作,而不需要创建新的线程。使用线程池可以避免频繁地创建和销毁线程,从而提高应用程序的性能和可伸缩性。

阅读全文 »

yield

发表于 2025-07-24 13:00:54
字数统计 789

在 C# 中,yield 關鍵字用於定義一個迭代器方法(Iterator Method), 這個方法可以產生一個可枚舉的序列。當迭代器方法被調用時, 它不會立即執行方法體中的程式碼,而是返回一個 IEnumerator 對象。 當使用者對這個 IEnumerator 對象調用 MoveNext() 方法時,才會執行迭代器方法中的程式碼,並返回序列中的下一個元素。

使用 yield 關鍵字可以讓我們更簡潔地定義一個可枚舉的序列, 而不需要手動實現 IEnumerator 和 IEnumerable 接口。 此外,在使用 yield 關鍵字時,我們可以使用 yield break 來提前結束序列的產生。

阅读全文 »

Tuple

发表于 2025-07-24 12:49:40
字数统计 331

可以通过nuget安装 NetLegacySupport.Tuple。这是从.Net 4.5移植到.Net 2.0和3.5的Tuple类

下面是一个使用 Tuple 的简单示例:

阅读全文 »

.NET Framework 自托管详解

发表于 2025-07-24 11:35:14
字数统计 862

.NET Framework 自托管详解

自托管(Self-Hosting)是指不依赖 IIS 等外部 Web 服务器,而是通过应用程序自身创建和管理 Web 服务器实例的方式运行 Web 应用程序。

1. HttpListener 方式

这是最基础的自托管方式,使用 .NET Framework 内置的 HttpListener 类:

阅读全文 »

winform程序防止多开

发表于 2025-07-24 11:24:21
字数统计 192
  1. Winform启动的时候,检测是否存在同样的进程名,防止程序多开;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            string processName = Process.GetCurrentProcess().ProcessName;
            Process[] processes = Process.GetProcessesByName(processName);
            //如果该数组长度大于1,说明多次运行
            if (processes.Length > 1)
            {
                MessageBox.Show("程序已运行,不能再次打开!");
                Environment.Exit(1);
            }
            else
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            }
        }
    }
阅读全文 »

.NET的版本

发表于 2025-07-24 11:22:21
字数统计 326

.NET Framework 是微软在 2002 年推出的一个软件开发框架,它提供了一组类库和运行时环境,可以用来开发 Windows 应用程序、Web 应用程序、服务端应用程序等。下面是 .NET Framework 的版本列表:

  • .NET Framework 1.0
  • .NET Framework 1.1
  • .NET Framework 2.0
  • .NET Framework 3.0
  • .NET Framework 3.5
  • .NET Framework 4.0
  • .NET Framework 4.5
  • .NET Framework 4.5.1
  • .NET Framework 4.5.2
  • .NET Framework 4.6
  • .NET Framework 4.6.1
  • .NET Framework 4.6.2
  • .NET Framework 4.7
  • .NET Framework 4.7.1
  • .NET Framework 4.7.2
  • .NET Framework 4.8
阅读全文 »

程序进程间通讯的方法

发表于 2025-07-24 11:20:36
字数统计 1182

在编程中,有几种常见的方法可以实现程序进程间的通信,包括:

  1. 管道(Pipes):管道是一种在两个进程之间传递数据的通信机制。它可以是匿名管道(在同一台计算机上的进程之间使用)或命名管道(在网络上的不同计算机之间使用)。

  2. 套接字(Sockets):套接字是一种通过网络在不同计算机上的进程之间进行通信的方法。它可以使用TCP协议(面向连接)或UDP协议(无连接)。

  3. 共享内存(Shared Memory):共享内存是一种在不同进程之间共享数据的机制。它允许多个进程访问同一块内存区域,从而实现数据的快速交换。

  4. 消息队列(Message Queues):消息队列是一种通过在进程之间传递消息来实现通信的机制。它可以是基于内存的消息队列或持久化的消息队列。

  5. 文件(Files):进程可以通过读写共享文件来进行通信。一个进程可以将数据写入文件,而另一个进程可以读取该文件以获取数据。

  6. 远程过程调用(Remote Procedure Call,RPC):RPC允许一个进程调用另一个进程中的函数或方法,就像调用本地函数一样。它可以在同一台计算机上的不同进程之间或在网络上的不同计算机之间进行通信。

这些方法各有优缺点,选择哪种方法取决于你的需求和特定的应用场景。

阅读全文 »
1 2 3 … 7
leafcxy

leafcxy

I can't tell you

64 日志
47 标签
GitHub E-Mail
© 2018 - 2025 leafcxy
由 Jekyll 强力驱动
主题 - NexT.Pisces