Engineering Notes

孟斌的小站

技术博客与学习记录

共 612 篇文章 标签与分类索引已启用

进程、线程与协程的简单对比

在并发编程中,进程、线程和协程是三个重要的概念。它们分别代表着不同的执行模型,各自具有独特的特点和适用场景。在本篇博客中,我们将深入比较这三者,探讨它们的优势、劣势以及适用情境。

继续阅读

线程简介

线程(Thread) 是计算机科学中的基本概念,表示进程中的一个执行单元。在同一进程内的多个线程共享相同的内存空间和系统资源。以下是关于线程的详细介绍:

继续阅读

进程简介

进程(Process) 是计算机科学中的一个基本概念,表示运行中的程序的实例。每个进程都有自己的独立内存空间、系统资源和执行流程,进程之间相对独立。以下是关于进程的详细介绍:

继续阅读

协程简介

协程(Coroutine) 是一种用户态的轻量级线程,它是一种协作式的并发编程模型。协程在执行流程中的挂起和恢复更加灵活,程序员可以显式地控制协程的执行。以下是关于协程的详细介绍:

继续阅读

MySQL大表设计

存储大规模数据集需要仔细设计数据库模式和索引,以便能够高效地支持各种查询操作。在面对数亿条数据,每条数据包含数百个字段的情况下,以下是我能想到的在设计数据库的时候需要注意的内容,不足之处欢迎批评指正:

继续阅读

Go实现网络代理

使用 Go 语言开发网络代理服务可以通过以下步骤完成。这里,我们将使用 golang.org/x/net/proxy 包来创建一个简单的 SOCKS5 代理服务作为示例。

go
继续阅读

go中异常处理流程

在 Go 语言中,panicrecoverdefer 是用于处理异常情况的关键字。它们通常一起使用来实现对程序错误的处理和恢复。

go
继续阅读

go 上下文:context.Context

Go语言中的上下文(Context)是一种用于在 Goroutines 之间传递取消信号、截止时间和其他请求范围值的标准方式。context 包提供了 Context 类型和一些相关的函数,用于在并发程序中有效地传递上下文信息。

go
继续阅读