refactor: 全面重构代码并加白话注释,移动全局并行,去掉去向/重复记录
- 重构后端与前端,全程大白话注释(不懂程序也能看懂) - 移动阶段改为全局并行(MoveAll,工人数=CPU核心数) - 去掉记录每个文件搬去哪了(删除去向回填,解决写库卡顿) - 去掉重复文件标记与统计:重复判定改为 MD5+路径都相同才算,重复则原地忽略不移动;MD5 相同但路径不同仍照常搬 - 媒体库去掉归类目录列,看板去掉重复/归类分布统计
This commit is contained in:
@@ -4,13 +4,15 @@ package api
|
||||
|
||||
import "golang.org/x/sys/windows"
|
||||
|
||||
// listLogicalDrives 返回 Windows 所有逻辑盘符(如 C:\、D:\)
|
||||
// listLogicalDrives 列出 Windows 所有可用的盘符(如 C:\、D:\)。
|
||||
// 只有 Windows 编译时才需要这个函数(见文件顶部的 //go:build windows)。
|
||||
func listLogicalDrives() []string {
|
||||
bits, err := windows.GetLogicalDrives()
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
drives := make([]string, 0, 26)
|
||||
// 26 个字母逐个检查,看哪个盘存在
|
||||
for i := 0; i < 26; i++ {
|
||||
if bits&(1<<uint(i)) != 0 {
|
||||
drives = append(drives, string(rune('A'+i))+":\\")
|
||||
|
||||
Reference in New Issue
Block a user