<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[e5pool的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/e5pool</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; e5pool]]></copyright><item><title><![CDATA[Bing Wallpaper 每日壁纸]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/141556814</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/141556814</guid><author>e5pool</author><pubDate>Mon, 26 Aug 2024 10:10:56 +0800</pubDate><description><![CDATA[Bing Wallpaper 是微软推出的一项服务，每日为用户提供精美的高清壁纸]]></description><category></category></item><item><title><![CDATA[Linux 环境变量]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/139051863</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/139051863</guid><author>e5pool</author><pubDate>Mon, 20 May 2024 03:17:48 +0800</pubDate><description><![CDATA[大多数Unix-like系统中，可以使用export命令来设置环境变量。]]></description><category></category></item><item><title><![CDATA[CPython 的使用]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/138776989</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/138776989</guid><author>e5pool</author><pubDate>Mon, 13 May 2024 03:04:26 +0800</pubDate><description><![CDATA[Python 程序中一些关键代码不想公开，可以使用 Cpython 来编译，然后正常导入。]]></description><category></category></item><item><title><![CDATA[Golang 打包]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135581326</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135581326</guid><author>e5pool</author><pubDate>Sun, 14 Jan 2024 12:17:44 +0800</pubDate><description><![CDATA[在包含 main 函数的包的目录下执行，它会生成一个可执行文件。文件名默认与包所在的目录名相同，但也可以使用 -o 选项来指定输出的文件名。Windows 环境下进行交叉编译以构建其他平台的可执行文件，你需要在命令行中设置。在 Windows 命令提示符（CMD）中设置环境变量，应使用。在 PowerShell，则应该使用。]]></description><category></category></item><item><title><![CDATA[Golang 网络编程]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135573792</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135573792</guid><author>e5pool</author><pubDate>Sun, 14 Jan 2024 11:42:03 +0800</pubDate><description><![CDATA[Call方法的第一个参数是要调用的服务和方法的名称，格式是"服务名.方法名"。它比建立连接时的三次握手要多一步，因为TCP连接是全双工的，所以每个方向必须单独进行终止。服务器读取来自客户端的消息，然后发送一个简单的响应。如果你打算在生产环境中使用RPC，可能需要考虑使用更现代的RPC框架，如gRPC，它提供更多的功能，包括支持Protocol Buffers和流式传输。如果你只需要创建一个简单的TCP服务器，而不需要使用TCP协议的高级特性，包中的函数，用于监听网络端口，但它们的用途和返回的类型有所不同。]]></description><category></category></item><item><title><![CDATA[Golang 反射]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135523159</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135523159</guid><author>e5pool</author><pubDate>Sat, 13 Jan 2024 17:18:35 +0800</pubDate><description><![CDATA[反射（reflection）是一种能够检查程序在运行时的变量类型和值的机制。Go的反射机制定义在reflect包中。使用反射，可以动态地调用对象的方法或访问其字段，即使在编写代码时并不知道这些方法或字段的具体存在反射主要涉及到和这两个类型。代表Go值的类型，而代表Go值的具体值在使用反射时需要注意的是，反射操作通常比直接操作要慢，因此在性能敏感的代码中应当谨慎使用反射。另外，过度使用反射可能会使代码难以理解和维护。]]></description><category></category></item><item><title><![CDATA[Golang 单元测试]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135517522</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135517522</guid><author>e5pool</author><pubDate>Thu, 11 Jan 2024 09:41:29 +0800</pubDate><description><![CDATA[单元测试是通过编写测试函数来完成的，这些函数位于_test.go文件中。]]></description><category></category></item><item><title><![CDATA[Golang 文件操作]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135516820</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135516820</guid><author>e5pool</author><pubDate>Thu, 11 Jan 2024 08:32:51 +0800</pubDate><description><![CDATA[每个数字可以是0到7之间的任意数字，分别控制读（4）、写（2）和执行（1）权限的开启和关闭。这些数字是对应的权限值的总和。一个权限表示是：0666，那么它其实是代表可读可写，前面的 0 是用来明确表示这是一个八进制数。如果想读取子目录中的内容，可以添加一个循环，然后判断是否是目录，然后同样取即可，直至没有子目录。读取指定目录下的文件和文件夹，及其大小。然后在此基础上，使用循环来读整个文件。(go 1.0)的优化版，性能更好。假如要读取的文件中只有内容。(go 1.16)，是。]]></description><category></category></item><item><title><![CDATA[Golang 泛型]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135493823</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135493823</guid><author>e5pool</author><pubDate>Thu, 11 Jan 2024 03:23:24 +0800</pubDate><description><![CDATA[泛型是在Go 1.18版本中引入的，它允许编写可以在多种数据类型上工作的函数和数据类型。这样做可以增加代码的复用性并减少重复。]]></description><category></category></item><item><title><![CDATA[Golang 异常处理]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135470451</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135470451</guid><author>e5pool</author><pubDate>Tue, 09 Jan 2024 07:39:37 +0800</pubDate><description><![CDATA[Go语言中，"异常"的概念与其他语言如Java或Python中的不太相同。Go没有提供传统意义上的try-catch机制来捕获异常。相反，Go使用错误作为其错误处理的主要方式感觉很麻烦，到处都要处理…，没有传统的try-catch好用。]]></description><category></category></item><item><title><![CDATA[Golang 线程安全与 sync.Map]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135470385</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135470385</guid><author>e5pool</author><pubDate>Tue, 09 Jan 2024 06:29:45 +0800</pubDate><description><![CDATA[线程安全通常是指在并发环境下，共享资源的访问被适当地管理，以防止竞争条件（race conditions）导致的数据不一致Go语言中的线程安全可以通过多种方式实现。]]></description><category></category></item><item><title><![CDATA[Golang 通道之 select 语句]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135470326</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135470326</guid><author>e5pool</author><pubDate>Tue, 09 Jan 2024 06:00:46 +0800</pubDate><description><![CDATA[select 语句是一个强大的特性，用于同时等待多个通道操作。select 可以监听多个通道的读写事件，并在有通道准备好时执行相关的case。如果有多个case同时就绪，select 会随机选择一个执行。如果没有case就绪，select 将阻塞，直到至少有一个case就绪。你还可以使用 default case来避免 select 阻塞，它会在其他case都没有就绪时执行。]]></description><category></category></item><item><title><![CDATA[Golang 协程与通道]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135435114</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135435114</guid><author>e5pool</author><pubDate>Mon, 08 Jan 2024 14:38:48 +0800</pubDate><description><![CDATA[在 Go 语言中，协程被称为 goroutines。goroutine 是 Go 的并发执行单元，它比传统的线程更轻量级，允许你以非常低的开销启动成千上万个并发任务通道（channel）是一种特殊的类型，用于在不同的 goroutines 之间进行通信和同步。通道可以被想象成一个传递数据的管道，它可以帮助确保并发程序的数据同步，避免竞态条件。]]></description><category></category></item><item><title><![CDATA[Golang 接口]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135435046</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135435046</guid><author>e5pool</author><pubDate>Sun, 07 Jan 2024 04:37:59 +0800</pubDate><description><![CDATA[在 Go 语言中，接口（interface）是一种类型，它规定了一组方法签名（method signatures），但不实现这些方法。任何实现了接口中所有方法的类型都隐式地实现了该接口，无需显式声明继承或实现关系。]]></description><category></category></item><item><title><![CDATA[Golang 结构体]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135434976</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135434976</guid><author>e5pool</author><pubDate>Sun, 07 Jan 2024 03:43:15 +0800</pubDate><description><![CDATA[在 Go 语言中，结构体（struct）是一种自定义的数据类型，将多个不同类型的字段（fields）组合在一起结构体通常用于模拟真实世界对象的属性和行为Age int在这个示例中，我们定义了一个名为 Person 的结构体，它有两个字段：Name 是 string 类型，Age 是 int 类型可以通过类型声明（type declaration）来定义一个新的自定义类型。自定义类型基于现有的类型，但它有自己的独立名称和方法，这可以使代码更加清晰和类型安全。]]></description><category></category></item><item><title><![CDATA[Golang switch 语句]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135420872</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135420872</guid><author>e5pool</author><pubDate>Sat, 06 Jan 2024 04:02:36 +0800</pubDate><description><![CDATA[switch 语句提供了一种简洁的方式来执行多路分支选择。]]></description><category></category></item><item><title><![CDATA[Golang 切片]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135398678</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135398678</guid><author>e5pool</author><pubDate>Fri, 05 Jan 2024 00:10:13 +0800</pubDate><description><![CDATA[在Go语言中，切片是一个引用类型，它提供了对数组的动态窗口。切片并不存储任何数据，它只是描述了底层数组中的一个片段。切片的定义包括三个部分：指向数组的指针、切片的长度和切片的容量。]]></description><category></category></item><item><title><![CDATA[Caching SHA2 password 与 MySQL native password 的区别]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135383448</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135383448</guid><author>e5pool</author><pubDate>Thu, 04 Jan 2024 12:05:44 +0800</pubDate><description><![CDATA[和是MySQL数据库管理系统中用于认证的两种不同的插件。这两种插件的主要区别在于它们使用的哈希算法和安全性。]]></description><category></category></item><item><title><![CDATA[Golang 变量类型及其声明定义]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135377036</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135377036</guid><author>e5pool</author><pubDate>Thu, 04 Jan 2024 07:47:43 +0800</pubDate><description><![CDATA[在Go语言中，变量可以通过多种方式声明和定义。使用var关键字声明变量，类型在变量名之后：var x int声明变量并初始化：类型推断（不显式指定类型，而是通过初始化值推断类型）：var z = 20短变量声明（只能在函数内部使用）：a := 30声明多个变量：分组声明变量（通常用于全局变量）：声明常量（常量不能使用短变量声明语法）：声明一个指针变量，并初始化为nil：声明一个指针变量，并使用new关键字分配内存：这些是Go语言中变量声明和定义的基本方式。]]></description><category></category></item><item><title><![CDATA[Pydantic 中 validator 和 validators 的区别]]></title><link>https://blog.youkuaiyun.com/e5pool/article/details/135027434</link><guid>https://blog.youkuaiyun.com/e5pool/article/details/135027434</guid><author>e5pool</author><pubDate>Sat, 16 Dec 2023 01:14:37 +0800</pubDate><description><![CDATA[pydantic 是一个数据验证库，使用 Python 类型注解来验证输入或转换数据。]]></description><category></category></item></channel></rss>