leafcxy


  • 首页

  • 归档

  • 标签

自定义事件

发表于 2025-07-28 08:23:09
字数统计 588

以下是一个使用 Python 实现自定义事件的示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import threading
import time

class CustomEvent:
    def __init__(self):
        self.handlers = set()

    def add_handler(self, handler):
        self.handlers.add(handler)

    def remove_handler(self, handler):
        self.handlers.remove(handler)

    def fire(self, *args, **kwargs):
        for handler in self.handlers:
            handler(*args, **kwargs)

# 创建一个自定义事件
my_event = CustomEvent()

# 定义一个事件处理函数
def on_my_event(message):
    print('Custom event received:', message)

# 添加事件处理函数到事件处理程序列表
my_event.add_handler(on_my_event)

# 触发自定义事件
my_event.fire('Hello, world!')

# 等待一段时间,以便查看输出结果
time.sleep(1)
阅读全文 »

vs2019离线安装包制作

发表于 2025-07-24 15:48:10
字数统计 293

vs2009脱机安装

  1. 执行layout.cmd,需要网络,如果已经下载localVSlayout,可以跳过这一步
  2. 执行cert.cmd,不需要网络.
  3. 执行setup.cmd,不需要网络.
阅读全文 »

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());
            }
        }
    }
阅读全文 »
1 2 3 … 7
leafcxy

leafcxy

I can't tell you

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