最新资讯

  • 【Java 复习日记 03】多线程与并发:从“知道”到“精通”的深层探索

【Java 复习日记 03】多线程与并发:从“知道”到“精通”的深层探索

2026-02-03 20:52:58 栏目:最新资讯 3 阅读

前言

在前两篇日记中,我梳理了 Java 基础和集合框架的核心知识。如果说集合是数据的容器,那么多线程就是驱动程序高效运行的引擎。今天,我要深入一个让我既兴奋又敬畏的主题——多线程与并发

记得第一次写多线程程序时,我天真地以为开几个线程就能让程序“飞起来”。结果迎来的不是性能提升,而是诡异的 Bug、随机崩溃的数据,以及深夜调试的崩溃。直到我系统学习了并发原理,才明白:多线程不是简单地“多开几个线程”,而是一套需要精密控制的艺术

从“线程安全”这个术语开始,到 JMM、锁优化、AQS 底层,我花时间才把零散的知识点串联成体系。今天,我将结合自己踩过的坑、读过的源码、做过的内容,带你深入 Java 并发的核心层。


1. 重新理解“线程”:从概念到本质

1.1 线程究竟是什么?与进程有何不同?

我曾经的误解:我以为线程就是“轻量级的进程”,多线程就是“多开几个执行流”。

现在的理解

  • 进程:是操作系统资源分配的基本单位,拥有独立的内存空间(堆、栈、数据段)。

  • 线程:是 CPU 调度的基本单位,共享进程的内存空间,但有独立的栈和程序计数器。

关键认知

Java 线程与操作系统线程是 1:1 映射(通过 pthread)。这意味着创建线程是有成本的(约 1MB 栈内存 + 系统调用开销)。而 Go 的协程初始只有 2KB,且由 Go 运行时调度,这就是为什么 Go 可以轻松创建十万级协程,而 Java 线程上万就可能崩溃。

1.2 线程的生命周期与状态转换

        源自《Java并发编程艺术》 java.lang.Thread.State枚举类中定义了六种线程的状态,可以调用线程Thread中的getState()方法获取当前线程的状态

线程状态解释
NEW尚未启动的线程状态,即线程创建,还未调用start方法
RUNNABLE就绪状态(调用start,等待调度)+  正在运行
BLOCKED等待监视器锁时,陷入阻塞状态
WAITING等待状态的线程正在等待另一线程执行特定的操作(如notify)
TIMED_WAITING具有指定等待时间的等待状态
TERMINATED线程完成执行,终止状态

学习线程状态时,我总混淆 BLOCKED 和 WAITING。直到看到了下面这张图,才彻底清晰:

核心区别

  • BLOCKED被动进入,因为抢锁失败,唤醒是自动的(锁释放时)。

  • WAITING主动进入,因为调用了 wait() 等方法,唤醒必须显式触发notify())。


2. 并发问题的根源:JMM 与三大特性

2.1 Java 内存模型(JMM):并发世界的宪法

JMM 不是真实存在的内存结构,而是一套规则,规定了多线程如何访问共享变量。

JMM 的核心思路是:定义主内存(大家共享的内存)和工作内存(每个线程自己的缓存),规定变量必须从主内存加载到工作内存才能操作,改完再写回主内存

我想的比喻

假设共享变量是一块公共黑板(主内存),每个线程都有一个自己的笔记本(工作内存/缓存)。
JMM 规定:你要修改黑板上的内容,必须先抄到笔记本上,改完再誊写回去。
问题就在于:什么时候抄?什么时候写回去?抄写顺序会不会乱?

这就是 可见性、原子性、有序性 三大问题的来源。

2.2 可见性:为什么改了值别人看不见?

        先想个场景:两个线程同时操作一个变量,比如线程 A 改了变量的值,线程 B 能不能立刻看到? 如果线程 B 看到的还是旧值,这就是可见性问题。为啥会这样?

        因为现在 CPU 都有缓存,线程操作变量时,会先把主内存里的变量读到自己的工作内存(比如 CPU 缓存)里,改完可能没及时写回主内存,另一个线程读的还是主内存的旧值

        JMM 里像 volatile 关键字就专门解决这个,用了 volatile 的变量,改完会立刻刷回主内存,同时让其他线程的缓存失效,必须重新从主内存读,这样就保证了可见性。

// 经典可见性问题
public class VisibilityProblem {
    private static boolean flag = false; // 没有 volatile!
    
    public static void main(String[] args) throws InterruptedException {
        Thread writer = new Thread(() -> {
            try { Thread.sleep(1000); } catch (InterruptedException e) {}
            flag = true;
            System.out.println("Flag 设置为 true");
        });
        
        Thread reader = new Thread(() -> {
            while (!flag) {
                // 可能永远循环,因为看不到 flag 的变化
            }
            System.out.println("看到 flag 变化了");
        });
        
        reader.start();
        writer.start();
    }
}

原因:CPU 缓存机制。线程 A 修改 flag 后,可能只写回自己的缓存,没同步到主内存。线程 B 读的仍然是旧值。

解决方案volatile 关键字

  • 写操作后立刻刷回主内存

  • 读操作前使本地缓存失效,强制从主内存读

2.3 原子性:为什么 i++ 不是线程安全的?

        再说说原子性,比如 i++,看着简单,其实是 “读 i、加 1、写回 i” 三步。如果两个线程同时做,可能线程 A 刚读完 i=10,线程 B 就把 i 改成 11,线程 A 再加 1 写回去还是 11,结果就错了。

        JMM 里用 synchronized 或者 Lock 锁就能保证原子性,加了锁之后,同一时间只有一个线程能执行这三步,中间不会被打断。

// i++ 的真相:非原子操作
public class AtomicityProblem {
    private static int count = 0;
    
    public static void main(String[] args) throws InterruptedException {
        Thread t1 = new Thread(() -> {
            for (int i = 0; i < 10000; i++) {
                count++; // 实际是:读 count → 加1 → 写 count
            }
        });
        
        Thread t2 = new Thread(() -> {
            for (int i = 0; i < 10000; i++) {
                count++;
            }
        });
        
        t1.start(); t2.start();
        t1.join(); t2.join();
        
        System.out.println("期望: 20000, 实际: " + count); // 可能 < 20000
    }
}

解决方案

  1. synchronized:悲观锁,保证代码块原子性

  2. AtomicInteger:基于 CAS 的乐观锁,无锁实现

  3. ReentrantLock:更灵活的锁机制

2.4 有序性:编译器与 CPU 的“优化陷阱”

        还有有序性,就是代码执行顺序可能和你写的不一样。编译器或者 CPU 为了提速,会在不影响单线程结果的情况下调整指令顺序。

        比如你先初始化对象 A,再把 A 的引用给变量 a,可能被重排成先给引用再初始化。单线程没问题,但多线程下,另一个线程拿到 a 的引用时,A 可能还没初始化好,一调用就报错。

        这时候 volatile 或者 synchronized 就能通过内存屏障阻止这种重排序,保证顺序正确。

// 指令重排序可能导致的诡异问题
public class OrderingProblem {
    private static int x = 0, y = 0;
    private static int a = 0, b = 0;
    
    public static void main(String[] args) throws InterruptedException {
        for (int i = 0; i < 1000000; i++) {
            x = y = a = b = 0;
            
            Thread one = new Thread(() -> {
                a = 1;  // 语句1
                x = b;  // 语句2
            });
            
            Thread two = new Thread(() -> {
                b = 1;  // 语句3
                y = a;  // 语句4
            });
            
            one.start(); two.start();
            one.join(); two.join();
            
            // 理论上不可能出现 x==0 && y==0
            // 但如果指令重排:线程1先执行语句2,线程2先执行语句4
            // 就可能出现 (0, 0)
            if (x == 0 && y == 0) {
                System.out.println("出现重排序!");
            }
        }
    }
}

volatile 的另一作用:通过内存屏障禁止指令重排序。


3. 锁的深层原理:从 synchronized 到 AQS

3.1 synchronized 的升级之路:锁升级

具体的锁升级的过程是:无锁->偏向锁->轻量级锁->重量级锁

  •         无锁:这是没有开启偏向锁的时候的状态,在JDK1.6之后偏向锁的默认开启的,但是有一个偏向延迟,需要在JVM启动之后的多少秒之后才能开启,这个可以通过JVM参数进行设置,同时是否开启偏向锁也可以通过JVM参数设置。
  •         偏向锁:这个是在偏向锁开启之后的锁的状态,如果还没有一个线程拿到这个锁的话,这个状态叫做匿名偏向,当一个线程拿到偏向锁的时候,下次想要竞争锁只需要拿线程ID跟MarkWord当中存储的线程ID进行比较,如果线程ID相同则直接获取锁(相当于锁偏向于这个线程),不需要进行CAS操作和将线程挂起的操作。
  •         轻量级锁:在这个状态下线程主要是通过CAS操作实现的。将对象的MarkWord存储到线程的虚拟机栈上,然后通过CAS将对象的MarkWord的内容设置为指向Displaced Mark Word的指针,如果设置成功则获取锁。在线程出临界区的时候,也需要使用CAS,如果使用CAS替换成功则同步成功,如果失败表示有其他线程在获取锁,那么就需要在释放锁之后将被挂起的线程唤醒。
  •         重量级锁:当有两个以上的线程获取锁的时候轻量级锁就会升级为重量级锁,因为CAS如果没有成功的话始终都在自旋,进行while循环操作,这是非常消耗CPU的,但是在升级为重量级锁之后,线程会被操作系统调度然后挂起,这可以节约CPU资源。

我的理解过程

  1. 偏向锁:假设只有一个线程用锁,直接在对象头标记线程ID,连 CAS 都不需要

  2. 轻量级锁:有竞争但不多,通过 CAS 自旋尝试,避免线程挂起

  3. 重量级锁:竞争激烈,自旋浪费 CPU,升级为操作系统级别的互斥锁

关键点:锁升级是不可逆的(除了批量重偏向等特殊场景)。

3.2  AQS:并发框架的灵魂

AQS(AbstractQueuedSynchronizer)是 JUC 包的基石。理解 AQS,才算真正理解 Java 并发。

        AQS全称为AbstractQueuedSynchronizer,是Java中的一个抽象类。 AQS是一个用于构建锁、同步器、协作工具类的工具类(框架)。

        AQS核心思想是,如果被请求的共享资源空闲,那么就将当前请求资源的线程设置为有效的工作线程,将共享资源设置为锁定状态;如果共享资源被占用,就需要一定的阻塞等待唤醒机制来保证锁分配。这个机制主要用的是CLH队列的变体实现的,将暂时获取不到锁的线程加入到队列中。

AQS三大核心:

  • 状态:state;
  • 控制线程抢锁和配合的FIFO队列(双向链表);
  • 期望协作工具类去实现的获取/释放等重要方法(重写)。

状态state

  • 这里state的具体含义,会根据具体实现类的不同而不同:比如在Semapore里,他表示剩余许可证的数量;在CountDownLatch里,它表示还需要倒数的数量;在ReentrantLock中,state用来表示“锁”的占有情况,包括可重入计数,当state的值为0的时候,标识该Lock不被任何线程所占有。
  • state是volatile修饰的,并被并发修改,所以修改state的方法都需要保证线程安全,比如getState、setState以及compareAndSetState操作来读取和更新这个状态。这些方法都依赖于unsafe类。

FIFO队列

  • 这个队列用来存放“等待的线程,AQS就是“排队管理器”,当多个线程争用同一把锁时,必须有排队机制将那些没能拿到锁的线程串在一起。当锁释放时,锁管理器就会挑选一个合适的线程来占有这个刚刚释放的锁。
  • AQS会维护一个等待的线程队列,把线程都放到这个队列里,这个队列是双向链表形式。

实现获取/释放等方法

  • 这里的获取和释放方法,是利用AQS的协作工具类里最重要的方法,是由协作类自己去实现的,并且含义各不相同;
  • 获取方法:获取操作会以来state变量,经常会阻塞(比如获取不到锁的时候)。在Semaphore中,获取就是acquire方法,作用是获取一个许可证; 而在CountDownLatch里面,获取就是await方法,作用是等待,直到倒数结束;
  • 释放方法:在Semaphore中,释放就是release方法,作用是释放一个许可证; 在CountDownLatch里面,获取就是countDown方法,作用是将倒数的数减一;
  • 需要每个实现类重写tryAcquire和tryRelease等方法。

3.3 死锁的产生与避免

3.3.1 死锁产生的四个条件

我曾遇到死锁,调试了很久才发现。同时满足四个必要条件才会产生死锁:

  1. 互斥条件:互斥条件是指多个线程不能同时使用同一个资源。
  2. 持有并等待条件:持有并等待条件是指,当线程 A 已经持有了资源 1,又想申请资源 2,而资源 2 已经被线程 C 持有了,所以线程 A 就会处于等待状态,但是线程 A 在等待资源 2 的同时并不会释放自己已经持有的资源 1。
  3. 不可剥夺条件:不可剥夺条件是指,当线程已经持有了资源 ,在自己使用完之前不能被其他线程获取,线程 B 如果也想使用此资源,则只能在线程 A 使用完并释放后才能获取。
  4. 环路等待条件:环路等待条件指的是,在死锁发生的时候,两个线程获取资源的顺序构成了环形链。
3.3.2 避免死锁的实践

        避免死锁问题就只需要破环其中一个条件就可以,最常见的并且可行的就是使用资源有序分配法,来破环环路等待条件

什么是资源有序分配法?

        线程 A 和 线程 B 获取资源的顺序要一样,当线程 A 是先尝试获取资源 A,然后尝试获取资源 B 的时候,线程 B 同样也是先尝试获取资源 A,然后尝试获取资源 B。也就是说,线程 A 和 线程 B 总是以相同的顺序申请自己想要的资源。


4. 线程池:不只是池化,更是资源管理艺术

4.1 创建属于我们的线程池

为什么不用 Executors 快捷创建?

原因:

  • newFixedThreadPool:队列无界,可能 OOM

  • newCachedThreadPool:最大线程数 Integer.MAX_VALUE,可能创建过多线程

  • newSingleThreadExecutor:队列无界

正确做法

手动配置 ThreadPoolExecutor

        手动创建 ThreadPoolExecutor 需要指定 7 个核心参数,理解这些参数才能用好。比如创建一个适合处理 IO 密集型任务的线程池(IO 密集型任务线程数可以多些,一般是 CPU 核心数的 2 倍)

// 获取CPU核心数 用于合理设置线程数
int corePoolSize = Runtime.getRuntime().availableProcessors() * 2;

// 手动配置线程池
ThreadPoolExecutor threadPool = new ThreadPoolExecutor(
    corePoolSize, // 参数一:核心线程数 线程池长期维持的最小线程数
    corePoolSize * 2, // 参数二:最大线程数 线程池能容纳的最多线程数
    60L, // 空闲线程存活时间 参数三:超过核心线程数的空闲线程 多久后销毁
    TimeUnit.SECONDS, // 参数四:存活时间单位
    new ArrayBlockingQueue<>(100), // 参数五:任务阻塞队列 核心线程忙时 新任务存这里
    Executors.defaultThreadFactory(), // 参数六:线程创建工厂 用于设置线程名 优先级等
    new ThreadPoolExecutor.AbortPolicy() // 参数七:拒绝策略 队列满且线程数达最大时 如何处理新任务
);

// 提交任务的两种方式和之前一致 这里用execute提交Runnable(无返回值 不能捕获异常)
threadPool.execute(() -> {
    System.out.println(IO任务执行中 + Thread.currentThread().getName());
    // 模拟IO操作 比如数据库查询 网络请求
});

// 关闭线程池 推荐用shutdown 等待已提交任务完成后再关闭
threadPool.shutdown();
// 若需要强制关闭 可调用shutdownNow 会中断正在执行的任务 返回未执行的任务
// List unExecutedTasks = threadPool.shutdownNow();

4.2 核心线程数设置为0可不可以?

可以。当核心线程数为0的时候,会创建一个非核心线程进行执行。

从下面的源码也可以看到,当核心线程数为 0 时,来了一个任务之后,会先将任务添加到任务队列,同时也会判断当前工作的线程数是否为 0,如果为 0,则会创建线程来执行线程池的任务。

4.3 shutdown ()与shutdownNow()以及线程池的优雅关闭

线程池中shutdown (),shutdownNow()这两个方法有什么作用?

  • shutdown使用了以后会置状态为SHUTDOWN,正在执行的任务会继续执行下去,没有被执行的则中断。此时,则不能再往线程池中添加任何任务,否则将会抛出 RejectedExecutionException 异常
  • 而 shutdownNow 为STOP,并试图停止所有正在执行的线程,不再处理还在池队列中等待的任务,当然,它会返回那些未执行的任务。 它试图终止线程的方法是通过调用 Thread.interrupt() 方法来实现的,但是这种方法的作用有限,如果线程中没有sleep 、wait、Condition、定时锁等应用, interrupt()方法是无法中断当前的线程的。所以,ShutdownNow()并不代表线程池就一定立即就能退出,它可能必须要等待所有正在执行的任务都执行完成了才能退出。

        从下面的源码【高亮】注释可以很清晰的看出两者的区别:

4.3.1 shutdown 源码:
public void shutdown() {
    final ReentrantLock mainLock = this.mainLock;
    mainLock.lock();
    try {
        checkShutdownAccess();
        // 高亮
        advanceRunState(SHUTDOWN);
        interruptIdleWorkers();
        onShutdown();
    } finally {
        mainLock.unlock();
    }
    tryTerminate();
}
4.3.2 shutdownNow 源码:
public List shutdownNow() {
    List tasks;
    final ReentrantLock mainLock = this.mainLock;
    mainLock.lock();
    try {
        checkShutdownAccess();
        // 高亮
        advanceRunState(STOP);
        interruptWorkers();
        // 高亮
        tasks = drainQueue();
    } finally {
        mainLock.unlock();
    }
    tryTerminate();
    // 高亮
    return tasks;
}
4.3.3 正确的关闭线程池方法:

根据源码的解读,我询问了AI相关的正确的关闭线程池的方法,给出如下代码可供大家学习:

import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;

public class ThreadPoolShutdownBestPractice {
    public static void safeShutdownThreadPool(ExecutorService executor, long timeout, TimeUnit unit) {
        // 第一步:优雅关闭,拒绝新任务,允许已提交任务执行
        executor.shutdown();
        
        try {
            // 第二步:等待指定时间,让线程池完成剩余任务
            if (!executor.awaitTermination(timeout, unit)) {
                // 第三步:超时未关闭,强制终止
                List unexecutedTasks = executor.shutdownNow();
                
                // 可选:处理未执行的任务(记录日志、重试等)
                System.out.println("线程池超时,强制关闭!未执行的任务数:" + unexecutedTasks.size());
                for (Runnable task : unexecutedTasks) {
                    // 这里可以根据业务需求处理未执行的任务,比如记录日志、放入重试队列等
                    System.out.println("未执行的任务:" + task.toString());
                }
                
                // 再次等待一小段时间,确保强制关闭生效
                if (!executor.awaitTermination(1, TimeUnit.SECONDS)) {
                    System.err.println("线程池最终仍未关闭,可能存在线程卡死!");
                }
            }
        } catch (InterruptedException e) {
            // 等待过程中当前线程被中断,立即强制关闭
            executor.shutdownNow();
            // 恢复中断状态,让上层感知
            Thread.currentThread().interrupt();
            System.err.println("等待线程池关闭时被中断,已强制关闭线程池");
        }
    }

    // 测试示例
    public static void main(String[] args) {
        // 创建线程池(实际开发中建议自定义线程池参数,而非Executors)
        ExecutorService executor = Executors.newFixedThreadPool(3);
        
        // 提交测试任务
        for (int i = 0; i < 5; i++) {
            int taskId = i;
            executor.submit(() -> {
                try {
                    // 模拟任务执行(比如业务逻辑)
                    System.out.println("任务" + taskId + "开始执行");
                    TimeUnit.SECONDS.sleep(2); // 模拟耗时操作
                    System.out.println("任务" + taskId + "执行完成");
                } catch (InterruptedException e) {
                    System.out.println("任务" + taskId + "被中断,执行终止");
                    // 中断后清理资源(比如关闭连接、回滚事务等)
                    Thread.currentThread().interrupt();
                }
            });
        }
        
        // 安全关闭线程池:等待3秒,超时则强制关闭
        safeShutdownThreadPool(executor, 3, TimeUnit.SECONDS);
        System.out.println("线程池最终状态:" + (executor.isTerminated() ? "已终止" : "未终止"));
    }
}

附加小提问:单例模型既然已经用了synchronized,为什么还要在加volatile?

        使用 synchronized 和 volatile 一起,可以创建一个既线程安全又能正确初始化的单例模式,避免了多线程环境下的各种潜在问题。这是一种比较完善的线程安全的单例模式实现方式,尤其适用于高并发环境。

public class Singleton {
    private static volatile Singleton instance;  // 必须 volatile!
    
    private Singleton() {}
    
    public static Singleton getInstance() {
        if (instance == null) {  // 第一次检查
            synchronized (Singleton.class) {
                if (instance == null) {  // 第二次检查
                    instance = new Singleton();  // 非原子操作!
                }
            }
        }
        return instance;
    }
}

关键new Singleton() 可能被重排序为:分配内存 → 设置引用 → 初始化对象
           如果线程 A 执行到“设置引用”但未初始化,线程 B 看到 instance 不为 null,就会返回未初始化的对象。
   volatile 在保证变量的可见性的同时禁止这种重排序。

总结

希望大家阅读后能有所收获,能与我一同进步。

我的核心收获

  1. 纠正线程认知偏差,掌握线程核心特性摆脱了 “线程是轻量级进程” 的片面理解,明确 Java 线程的六种生命周期状态,清晰区分 BLOCKED 与 WAITING 的核心差异,建立了对线程执行本质的正确认知。

  2. 吃透 JMM 核心规则,攻克三大并发问题理解 Java 内存模型(JMM)“主内存 - 工作内存” 的核心设计,掌握可见性、原子性、有序性问题的产生根源,以及 volatile 关键字、原子类等对应的解决方案,能通过代码复现并验证并发问题。

  3. 深挖锁机制底层原理,掌握并发核心基石理清 synchronized 的锁升级流程(无锁→偏向锁→轻量级锁→重量级锁),理解 AQS 作为 JUC 框架核心的三大要素(state 状态、FIFO 等待队列、自定义获取 / 释放方法),同时掌握死锁产生的四大条件及资源有序分配的规避策略。

  4. 掌握线程池实践精髓,实现资源高效管理学会手动配置线程池的核心参数,摒弃 Executors 工具类的弊端,理解核心线程数设为 0 的底层逻辑,掌握 shutdown 与 shutdownNow 的区别,并能通过 “shutdown+awaitTermination+shutdownNow” 的组合实现线程池的优雅关闭。

  5. 厘清单例模式并发陷阱,理解 volatile 关键作用明确双重检查锁单例模式中,synchronized 仅能保证原子性和可见性,而 volatile 能解决 instance 对象初始化时的指令重排序问题,两者搭配才能实现高并发下的安全单例。

学习小贴士
        学习并发时,不要只看概念,一定要动手写代码、制造并发问题、然后解决它。


只要你转身,我就在这里。                                ----《方圆几里》薛之谦

本文地址:https://www.yitenyun.com/5369.html

搜索文章

Tags

#服务器 #python #pip #conda #人工智能 #微信 #ios面试 #ios弱网 #断点续传 #ios开发 #objective-c #ios #ios缓存 #远程工作 #Trae #IDE #AI 原生集成开发环境 #Trae AI #kubernetes #笔记 #平面 #容器 #linux #学习方法 香港站群服务器 多IP服务器 香港站群 站群服务器 #运维 #学习 #hadoop #hbase #hive #zookeeper #spark #kafka #flink #银河麒麟高级服务器操作系统安装 #银河麒麟高级服务器V11配置 #设置基础软件仓库时出错 #银河麒高级服务器系统的实操教程 #生产级部署银河麒麟服务系统教程 #Linux系统的快速上手教程 #docker #科技 #深度学习 #自然语言处理 #神经网络 #ARM服务器 # GLM-4.6V # 多模态推理 #分阶段策略 #模型协议 #华为云 #部署上线 #动静分离 #Nginx #新人首发 #kylin #arm #飞牛nas #fnos #大数据 #职场和发展 #程序员创富 #harmonyos #鸿蒙PC #低代码 #爬虫 #音视频 #fastapi #html #css #tcp/ip #网络 #qt #C++ #ide #java #开发语言 #前端 #javascript #架构 #经验分享 #安卓 #PyTorch #模型训练 #星图GPU #开源 #语言模型 #大模型 #ai #ai大模型 #agent #github #git #langchain #数据库 #物联网 #websocket #进程控制 #Conda # 私有索引 # 包管理 #gemini #gemini国内访问 #gemini api #gemini中转搭建 #Cloudflare #aws #云计算 #MobaXterm #ubuntu #word #umeditor粘贴word #ueditor粘贴word #ueditor复制word #ueditor上传word图片 #AI编程 #ssh #unity #c# #游戏引擎 #node.js #数信院生信服务器 #Rstudio #生信入门 #生信云服务器 #windows #RTP over RTSP #RTP over TCP #RTSP服务器 #RTP #TCP发送RTP #云原生 #iventoy #VmWare #OpenEuler #ci/cd #jenkins #gitlab #自动化 #ansible #内网穿透 #cpolar #区块链 #测试用例 #生活 #后端 #Reactor #风控模型 #决策盲区 #nginx #c++ #算法 #牛客周赛 #驱动开发 #flutter #centos #svn #openHiTLS #TLCP #DTLCP #密码学 #商用密码算法 #缓存 #儿童书籍 #儿童诗歌 #童话故事 #经典好书 #儿童文学 #好书推荐 #经典文学作品 #私有化部署 #vscode #mobaxterm #计算机视觉 #http #项目 #高并发 #矩阵 #线性代数 #AI运算 #向量 #fabric #postgresql #android #腾讯云 #serverless #sql #AIGC #agi #diskinfo # TensorFlow # 磁盘健康 #Harbor #FTP服务器 #java-ee #文心一言 #AI智能体 #log4j #ollama #microsoft #分布式 #华为 #iBMC #UltraISO #多个客户端访问 #IO多路复用 #回显服务器 #TCP相关API #vue上传解决方案 #vue断点续传 #vue分片上传下载 #vue分块上传下载 #dify #spring cloud #spring #vue.js #mysql #json #prometheus #大模型学习 #AI大模型 #大模型教程 #大模型入门 #mcu #阿里云 #pycharm #php #mcp #mcp server #AI实战 #Dell #PowerEdge620 #内存 #硬盘 #RAID5 #flask #c语言 #企业开发 #ERP #项目实践 #.NET开发 #C#编程 #编程与数学 #内存治理 #django #pytorch #select #重构 #机器学习 #信息与通信 #开源软件 #PyCharm # 远程调试 # YOLOFuse #rocketmq #网络协议 #jmeter #功能测试 #软件测试 #自动化测试 #Ubuntu服务器 #硬盘扩容 #命令行操作 #VMware #uni-app #小程序 #notepad++ #jar #数学建模 #2026年美赛C题代码 #2026年美赛 #安全 #进程 #spring boot #数据结构 #嵌入式 #ecmascript #elementui #程序人生 #科研 #博士 #鸿蒙 #es安装 #chatgpt #DeepSeek #AI #DS随心转 #web #webdav #钉钉 #机器人 #超算服务器 #算力 #高性能计算 #仿真分析工作站 #服务器繁忙 #蓝桥杯 #企业微信 #正则 #正则表达式 #jetty #硬件工程 #Ansible # 自动化部署 # VibeThinker #课程设计 #产品经理 #ui #团队开发 #墨刀 #figma #redis #udp #散列表 #哈希算法 #leetcode #jvm #golang #vllm #Streamlit #Qwen #本地部署 #AI聊天机器人 #数据集 #游戏 #mvp #个人开发 #设计模式 #FaceFusion # Token调度 # 显存优化 #LLM #FL Studio #FLStudio #FL Studio2025 #FL Studio2026 #FL Studio25 #FL Studio26 #水果软件 #vim #gcc #yum #计算机网络 #京东云 #性能优化 #mmap #nio #深度优先 #DFS #rabbitmq #protobuf #毕业设计 #Android #Bluedroid #scrapy #powerpoint #Com #MCP #MCP服务器 #数据仓库 #claude #vue3 #天地图 #403 Forbidden #天地图403错误 #服务器403问题 #天地图API #部署报错 #操作系统 #AI产品经理 #大模型开发 #大语言模型 #长文本处理 #GLM-4 #Triton推理 #svm #amdgpu #kfd #ROCm #网络安全 #web安全 #我的世界 #守护进程 #复用 #screen #智能手机 #arm开发 #嵌入式硬件 #设备驱动 #芯片资料 #网卡 #系统架构 #everything #shell #CPU利用率 #ffmpeg #Linux #TCP #线程 #线程池 #todesk #酒店客房管理系统 #毕设 #论文 #wsl #L2C #勒让德到切比雪夫 #鸭科夫 #逃离鸭科夫 #鸭科夫联机 #鸭科夫异地联机 #开服 #阻塞队列 #生产者消费者模型 #服务器崩坏原因 #adb #autosar #SSH # ProxyJump # 跳板机 #AI论文写作工具 #学术论文创作 #论文效率提升 #MBA论文写作 #transformer #cnn #ModelEngine #银河麒麟操作系统 #openssh #华为交换机 #信创终端 #ssl #信息可视化 #claude code #codex #code cli #ccusage #Ascend #MindIE #oracle #stm32 #gpu算力 #DisM++ # 系统维护 #金融 #金融投资Agent #Agent #语音识别 #twitter #线性回归 #opencv #openclaw #n8n #幼儿园 #园长 #幼教 #数模美赛 #matlab #abtest #游戏私服 #云服务器 #sizeof和strlen区别 #sizeof #strlen #计算数据类型字节数 #计算字符串长度 #树莓派4b安装系统 #流量运营 #用户运营 #AI写作 #全能视频处理软件 #视频裁剪工具 #视频合并工具 #视频压缩工具 #视频字幕提取 #视频处理工具 #openresty #lua #程序员 #电气工程 #C# #PLC #社科数据 #数据分析 #数据挖掘 #数据统计 #经管数据 #自动驾驶 #Canal #SSH Agent Forwarding # PyTorch # 容器化 #贪心算法 #单片机 #sqlserver #需求分析 #scala #测试工具 #压力测试 #边缘计算 #debian #面试 #Coze工作流 #AI Agent指挥官 #多智能体系统 #tdengine #时序数据库 #制造 #涛思数据 #HBA卡 #RAID卡 #asp.net #硬件 #1024程序员节 #VS Code调试配置 #LoRA # RTX 3090 # lora-scripts #react.js #GPU服务器 #8U #硬件架构 #fiddler #PowerBI #企业 #考研 #软件工程 #ddos #ROS #googlecloud #电脑 #游戏机 #Node.js #漏洞检测 #CVE-2025-27210 #银河麒麟 #系统升级 #信创 #国产化 #振镜 #振镜焊接 #零售 #Modbus-TCP #OBC #azure #3d #编辑器 #求职招聘 #ida #ProCAST2025 #ProCast #脱模 #顶出 #应力计算 #铸造仿真 #变形计算 #中间件 #研发管理 #禅道 #禅道云端部署 #链表 #zabbix #ssm #STUN # TURN # NAT穿透 #RAID #RAID技术 #磁盘 #存储 #laravel #里氏替换原则 #whisper #若依 #quartz #框架 #YOLO #分类 #unity3d #服务器框架 #Fantasy #elasticsearch #目标检测 #YOLO26 #YOLO11 #微信小程序 #计算机 #连锁药店 #连锁店 #智能路由器 #visual studio code #凤希AI伴侣 #我的世界服务器搭建 #minecraft #iphone #生信 #java大文件上传 #java大文件秒传 #java大文件上传下载 #java文件传输解决方案 #聚类 #journalctl #双指针 #信号处理 #目标跟踪 #架构师 #软考 #系统架构师 #wordpress #雨云 #LobeChat #vLLM #GPU加速 #流量监控 #selenium #RAG #全链路优化 #实战教程 #AB包 #MC #数组 #ESXi #SSH反向隧道 # Miniconda # Jupyter远程访问 #几何学 #拓扑学 #链表的销毁 #链表的排序 #链表倒置 #判断链表是否有环 #grafana #.net #homelab #Lattepanda #Jellyfin #Plex #Emby #Kodi #asp.net大文件上传 #asp.net大文件上传下载 #asp.net大文件上传源码 #ASP.NET断点续传 #asp.net上传文件夹 #pdf #测试流程 #金融项目实战 #P2P #其他 #搜索引擎 #智慧校园解决方案 #智慧校园一体化平台 #智慧校园选型 #智慧校园采购 #智慧校园软件 #智慧校园专项资金 #智慧校园定制开发 #ping通服务器 #读不了内网数据库 #bug菌问答团队 #数码相机 #webrtc #SSM 框架 #孕期健康 #产品服务推荐 #推荐系统 #用户交互 #epoll #高级IO #无人机 #Deepoc #具身模型 #开发板 #未来 #流程图 #论文阅读 #论文笔记 #Windows 更新 #Chat平台 #ARM架构 #risc-v #ms-swift # 一锤定音 # 大模型微调 #deepseek #VibeVoice # Triton # 语音合成 #机器视觉 #6D位姿 #SSH公钥认证 # 安全加固 #RustDesk # IndexTTS 2.0 # 远程运维 #cpp #排序算法 #插入排序 #NPU #CANN #飞书 #推荐算法 #海外短剧 #海外短剧app开发 #海外短剧系统开发 #短剧APP #短剧APP开发 #短剧系统开发 #海外短剧项目 #Qwen3-14B # 大模型部署 # 私有化AI #tensorflow #导航网 #智慧城市 #vp9 #AutoDL #vue #log #H5 #跨域 #发布上线后跨域报错 #请求接口跨域问题解决 #跨域请求代理配置 #request浏览器跨域 #screen 命令 #apache #macos #fpga开发 #LVDS #高速ADC #DDR # GLM-TTS # 数据安全 #UDP的API使用 #浏览器自动化 #python #支付 #PyTorch 特性 #动态计算图 #张量(Tensor) #自动求导Autograd #GPU 加速 #生态系统与社区支持 #与其他框架的对比 #cascadeur #设计师 #游戏美术 #游戏策划 #远程桌面 #远程控制 #Gunicorn #WSGI #Flask #并发模型 #容器化 #Python #性能调优 #bash #智能一卡通 #门禁一卡通 #梯控一卡通 #电梯一卡通 #消费一卡通 #一卡通 #考勤一卡通 #ai编程 #llama #ceph #RPA #影刀RPA #AI办公 #SAP #ebs #metaerp #oracle ebs #ngrok #框架搭建 #SRS #流媒体 #直播 #蓝耘智算 #版本控制 #Git入门 #开发工具 #代码托管 #个人博客 #glibc #C语言 #贴图 #材质 #UDP套接字编程 #UDP协议 #网络测试 #可信计算技术 #winscp #智能体 #ONLYOFFICE #MCP 服务器 #mybatis #tomcat # 双因素认证 #powerbi #前端框架 #嵌入式编译 #ccache #distcc #lvs #负载均衡 #Nacos #微服务 #nas #鼠大侠网络验证系统源码 #Miniconda #Docker #cursor #puppeteer #状态模式 #进程创建与终止 #spine #llm #embedding #IndexTTS2 # 阿里云安骑士 # 木马查杀 #Karalon #AI Test #IndexTTS 2.0 #本地化部署 #文生视频 #CogVideoX #AI部署 #tcpdump #mamba #迁移重构 #数据安全 #漏洞 #代码迁移 #车辆排放 #restful #ajax #SA-PEKS # 关键词猜测攻击 # 盲签名 # 限速机制 #Claude #视频去字幕 #Spring AI #STDIO协议 #Streamable-HTTP #McpTool注解 #服务器能力 #CMake #Make #C/C++ #堡垒机 #安恒明御堡垒机 #windterm #零代码平台 #AI开发 #paddleocr #esp32教程 #模版 #函数 #类 #笔试 #pencil #pencil.dev #设计 #逻辑回归 #图像处理 #yolo #vps #Anything-LLM #IDC服务器 #工具集 #simulink #rust #高品质会员管理系统 #收银系统 #同城配送 #最好用的电商系统 #最好用的系统 #推荐的前十系统 #JAVA PHP 小程序 ##程序员和算法的浪漫 #sqlite #LabVIEW知识 #LabVIEW程序 #labview #LabVIEW功能 #Playbook #AI服务器 #firefox #WEB #pjsip #Triton # CUDA #p2p #intellij-idea #database #idea #SSH保活 #远程开发 #海外服务器安装宝塔面板 #翻译 #开源工具 #910B #JAVA #Java #openlayers #bmap #tile #server #https #NAS #飞牛NAS #监控 #NVR #EasyNVR #RAGFlow #DeepSeek-R1 #eBPF # GLM-4.6V-Flash-WEB # 显卡驱动备份 #联机教程 #局域网联机 #局域网联机教程 #局域网游戏 #EMC存储 #存储维护 #NetApp存储 #简单数论 #埃氏筛法 #openEuler #Hadoop #客户端 #DIY机器人工房 #vuejs #nacos #银河麒麟aarch64 #uvicorn #uvloop #asgi #event #yolov12 #研究生life #Shiro #反序列化漏洞 #CVE-2016-4437 #学习笔记 #jdk #TensorRT # 推理优化 #paddlepaddle #运营 #React安全 #漏洞分析 #Next.js #信令服务器 #Janus #MediaSoup #CFD #ip #Jetty # CosyVoice3 # 嵌入式服务器 #建筑缺陷 #红外 #结构体 #土地承包延包 #领码SPARK #aPaaS+iPaaS #数字化转型 #智能审核 #档案数字化 #LangGraph #模型上下文协议 #MultiServerMCPC #load_mcp_tools #load_mcp_prompt #SMTP # 内容安全 # Qwen3Guard #X11转发 # 公钥认证 #2026AI元年 #年度趋势 #5G #平板 #交通物流 #智能硬件 #国产PLM #瑞华丽PLM #瑞华丽 #PLM #HeyGem # 远程访问 # 服务器IP配置 #MS #Materials #clickhouse #改行学it #创业创新 #北京百思可瑞教育 #百思可瑞教育 #北京百思教育 #多线程 #性能调优策略 #双锁实现细节 #动态分配节点内存 #插件 #r-tree #wpf #串口服务器 #Modbus #MOXA #GATT服务器 #蓝牙低功耗 #扩展屏应用开发 #android runtime #渗透测试 #服务器解析漏洞 #TLS协议 #HTTPS #漏洞修复 #运维安全 #UOS #海光K100 #统信 #DDD #tdd #NFC #智能公交 #服务器计费 #FP-增长 #策略模式 #Proxmox VE #虚拟化 #Fun-ASR # 语音识别 # WebUI #esb接口 #走处理类报异常 #密码 #GB/T4857 #GB/T4857.17 #GB/T4857测试 #CUDA # GPU服务器 # tmux #交互 #chrome #部署 #昇腾300I DUO #TFTP #smtp #smtp服务器 #PHP #intellij idea #性能测试 #LoadRunner #树莓派 #N8N #cosmic #kmeans #vnstat #c++20 # 远程连接 #数字孪生 #三维可视化 #fs7TF #工厂模式 #WinDbg #Windows调试 #内存转储分析 #matplotlib #安全架构 #SFTP #HCIA-Datacom #H12-811 #题库 #最新题库 #攻防演练 #Java web #红队 #运维开发 #dreamweaver #opc ua #opc #鲲鹏 #昇腾 #npu #东方仙盟 #JumpServer #API限流 # 频率限制 # 令牌桶算法 #AI+ #coze #AI入门 #AI赋能 #处理器 #计组 #数电 #黑群晖 #虚拟机 #无U盘 #纯小白 #指针 #anaconda #虚拟环境 #SSH跳板机 # Python3.11 #teamviewer #蓝湖 #Axure原型发布 #React #Next #CVE-2025-55182 #RSC #SSH免密登录 #集成测试 #分布式数据库 #集中式数据库 #业务需求 #选型误 #单元测试 #上下文工程 #langgraph #意图识别 #门禁 #梯控 #智能梯控 #源代码管理 #elk #Socket网络编程 #turn #黑客技术 #网安应急响应 # 目标检测 #chat #微PE # GLM # 服务连通性 #ambari #静脉曲张 #腿部健康 #muduo库 #uv #uvx #uv pip #npx #Ruff #pytest # 高并发 #ESP32 #传感器 #MicroPython #数据恢复 #视频恢复 #视频修复 #RAID5恢复 #流媒体服务器恢复 #RK3576 #瑞芯微 #硬件设计 #数据采集 #浏览器指纹 #springboot #CosyVoice3 # IP配置 # 0.0.0.0 #Tokio #网络配置实战 #Web/FTP 服务访问 #计算机网络实验 #外网访问内网服务器 #Cisco 路由器配置 #静态端口映射 #网络运维 #milvus #知识库 #react native #jupyter #web server #请求处理流程 #Rust #异步编程 #系统编程 #Pin #http服务器 #edge #迭代器模式 #观察者模式 #机器人学习 #RSO #机器人操作系统 #Anaconda配置云虚拟环境 #远程连接 #MQTT协议 #能源 #汽车 #vivado license #CVE-2025-68143 #CVE-2025-68144 #CVE-2025-68145 #html5 #weston #x11 #x11显示服务器 #IO #证书 #政务 #语音生成 #TTS #集成学习 # 数字人系统 # 远程部署 #Host #SSRF #知识 #蓝牙 #LE Audio #BAP #go #Clawdbot #个人助理 #数字员工 #agentic bi #论文复现 #SEO优化 #KMS #slmgr #娱乐 #敏捷流程 #宝塔面板部署RustDesk #RustDesk远程控制手机 #手机远程控制 #音乐分类 #音频分析 #ViT模型 #Gradio应用 #rustdesk #连接数据库报错 #Kuikly #openharmony #AI赋能盾构隧道巡检 #开启基建安全新篇章 #以注意力为核心 #YOLOv12 #AI隧道盾构场景 #盾构管壁缺陷病害异常检测预警 #隧道病害缺陷检测 #YOLOFuse # Base64编码 # 多模态检测 #IPv6 #DNS #智能家居 #动态规划 #xlwings #Excel #Discord机器人 #云部署 #程序那些事 #学术生涯规划 #CCF目录 #基金申请 #职称评定 #论文发表 #科研评价 #顶会顶刊 #安全威胁分析 #源码 #闲置物品交易系统 #运维工具 #ipmitool #BMC # 黑屏模式 # TTS服务器 #EN4FE #C #自由表达演说平台 #演说 #bootstrap #移动端h5网页 #调用浏览器摄像头并拍照 #开启摄像头权限 #拍照后查看与上传服务器端 #摄像头黑屏打不开问题 #SPA #单页应用 #web3.py #系统安全 #范式 #入侵 #日志排查 #maven #prompt #Fluentd #Sonic #日志采集 #面向对象 #YOLOv8 # Docker镜像 #文件IO #输入输出流 #麒麟OS #文件管理 #文件服务器 #国产开源制品管理工具 #Hadess #一文上手 # REST API #swagger # 大模型 # 模型训练 #flume #mariadb #就业 #CLI #JavaScript #langgraph.json #UDP #iot #raid #raid阵列 #wps # 高并发部署 #OPCUA #环境搭建 #pandas #CSDN #OSS #AI大模型应用开发 #学术写作辅助 #论文创作效率提升 #AI写论文实测 # 硬件配置 #算力一体机 #ai算力服务器 # 水冷服务器 # 风冷服务器 #ue4 #ue5 #DedicatedServer #独立服务器 #专用服务器 #VoxCPM-1.5-TTS # 云端GPU # PyCharm宕机 #青少年编程 #webpack #rdp #SMP(软件制作平台) #EOM(企业经营模型) #应用系统 #AI生成 # outputs目录 # 自动化 #寄存器 #长文本理解 #glm-4 #推理部署 #echarts #项目申报系统 #项目申报管理 #项目申报 #企业项目申报 #libosinfo #Go并发 #高并发架构 #Goroutine #系统设计 #Dify #tornado #电商 #esp32 arduino #HistoryServer #Spark #YARN #jobhistory #FASTMCP #sglang #ComfyUI # 推理服务器 #reactjs #web3 #产品运营 #内存接口 # 澜起科技 # 服务器主板 #模拟退火算法 #三维重建 #高斯溅射 #x86_64 #数字人系统 #windows11 #系统修复 #ICPC #文件传输 #电脑文件传输 #电脑传输文件 #电脑怎么传输文件到另一台电脑 #电脑传输文件到另一台电脑 #说话人验证 #声纹识别 #CAM++ #性能 #优化 #RAM #mongodb #rtsp #转发 #unix #dubbo #人脸识别 #人脸核身 #活体检测 #身份认证与人脸对比 #微信公众号 #1panel #vmware #压枪 #gpu #nvcc #cuda #nvidia #PTP_1588 #gPTP #excel #群晖 #音乐 #IntelliJ IDEA #Spring Boot #neo4j #NoSQL #SQL #k8s #高仿永硕E盘的个人网盘系统源码 #eclipse #servlet #Windows #汇编 #RXT4090显卡 #RTX4090 #深度学习服务器 #硬件选型 #gitea # 服务器IP # 端口7860 #万悟 #联通元景 #镜像 #typescript #npm #VPS #搭建 #TCP服务器 #开发实战 #农产品物流管理 #物流管理系统 #农产品物流系统 #农产品物流 #xss #idm #网站 #截图工具 #批量处理图片 #图片格式转换 #图片裁剪 #进程等待 #wait #waitpid #健身房预约系统 #健身房管理系统 #健身管理系统 #文件上传漏洞 #ThingsBoard MCP #可撤销IBE #服务器辅助 #私钥更新 #安全性证明 #双线性Diffie-Hellman #VSCode # SSH #Android16 #音频性能实战 #音频进阶 # 云服务器 # 服务器IP访问 # 端口映射 #CTF #gateway #Comate #遛狗 #SSE # AI翻译机 # 实时翻译 #bug #代理 #markdown #建站 #结构与算法 #C++ UA Server #SDK #跨平台开发 #聊天小程序 #arm64 #注入漏洞 #大学生 #大作业 #测试覆盖率 #可用性测试 #DAG #智能体从0到1 #新手入门 #nodejs #云服务器选购 #Saas #CPU #outlook #错误代码2603 #无网络连接 #2603 # ControlMaster #练习 #基础练习 #循环 #九九乘法表 #计算机实现 #esp32 #mosquito #dynadot #域名 #题解 #图 #dijkstra #迪杰斯特拉 #HarmonyOS APP #lstm #safari #程序开发 #程序设计 #计算机毕业设计 #b树 #具身智能 #memory mcp #Cursor #网路编程 #百万并发 #docker-compose #NSP #下一状态预测 #aigc #银河麒麟部署 #银河麒麟部署文档 #银河麒麟linux #银河麒麟linux部署教程 #声源定位 #MUSIC #Moltbook #windbg分析蓝屏教程 #AI电商客服 #le audio #低功耗音频 #通信 #连接 #旅游 #IFix # 远程开发 # Qwen3Guard-Gen-8B #Buck #NVIDIA #交错并联 #DGX #大剑师 #nodejs面试题 #ServBay #C2000 #TI #实时控制MCU #AI服务器电源 #随机森林 #Cpolar #国庆假期 #服务器告警 #Llama-Factory # 树莓派 # ARM架构 #经济学 #gerrit #AI 推理 #NV #memcache #晶振 #TTS私有化 # IndexTTS # 音色克隆 #ansys #ansys问题解决办法 #单例模式 #远程访问 #远程办公 #飞网 #安全高效 #配置简单 #resnet50 #分类识别训练 #ranger #MySQL8.0 #GB28181 #SIP信令 #SpringBoot #视频监控 #远程软件 #OpenManage #WT-2026-0001 #QVD-2026-4572 #smartermail #AI视频创作系统 #AI视频创作 #AI创作系统 #AI视频生成 #AI工具 #AI创作工具 # Connection refused #智能体来了 #智能体对传统行业冲击 #行业转型 #系统管理 #服务 #Python3.11 #Xshell #Finalshell #生物信息学 #组学 #视频 #Spire.Office #隐私合规 #网络安全保险 #法律风险 #风险管理 #逆向工程 #blender #技术美术 # ARM服务器 # 大模型推理 #screen命令 #快递盒检测检测系统 #管道Pipe #system V #统信UOS #服务器操作系统 #win10 #qemu #odoo #Apple AI #Apple 人工智能 #FoundationModel #Summarize #SwiftUI #Spring #Java面试 #Java程序员 #后端开发 #Redis #分布式锁 #vertx #vert.x #vertx4 #runOnContext # 服务器配置 # GPU #视觉检测 #visual studio #appche #muduo #TcpServer #accept #高并发服务器 #HarmonyOS #xeon #AI-native #dba #LangFlow # 轻量化镜像 # 边缘计算 #嵌入式开发 # DIY主机 # 交叉编译 #国产化OS #防火墙 #SSH跳转 #0day漏洞 #DDoS攻击 #漏洞排查 #gRPC #注册中心 #postman #win11 # GPU集群 #服务器开启 TLS v1.2 #IISCrypto 使用教程 #TLS 协议配置 #IIS 安全设置 #服务器运维工具 #ftp #sftp #samba #copilot #c # 批量管理 #mapreduce #ASR #SenseVoice #硬盘克隆 #DiskGenius #mtgsig #美团医药 #美团医药mtgsig #美团医药mtgsig1.2 #媒体 #路由器 #opc模拟服务器 #测评 #网络编程 #Socket #套接字 #I/O多路复用 #字节序 #galeweather.cn #高精度天气预报数据 #光伏功率预测 #风电功率预测 #高精度气象 #量子计算 #WinSCP 下载安装教程 #FTP工具 #服务器文件传输 #计算几何 #斜率 #方向归一化 #叉积 #视觉理解 #Moondream2 #多模态AI #语音合成 #实时音视频 #业界资讯 #勒索病毒 #勒索软件 #加密算法 #.bixi勒索病毒 #数据加密 #ArkUI #ArkTS #鸿蒙开发 #服务器线程 # SSL通信 # 动态结构体 #报表制作 #职场 #数据可视化 #用数据讲故事 #手机h5网页浏览器 #安卓app #苹果ios APP #手机电脑开启摄像头并排查 #JT/T808 #车联网 #车载终端 #模拟器 #仿真器 #开发测试 #JNI #CCE #Dify-LLM #Flexus #sentinel #AE #Keycloak #Quarkus #AI编程需求分析 #铁路桥梁 #DIC技术 #箱梁试验 #裂纹监测 #四点弯曲 #可再生能源 #绿色算力 #风电 #hibernate #POC #问答 #交付 #AI应用编程 #dlms #dlms协议 #逻辑设备 #逻辑设置间权限 #r语言 #七年级上册数学 #有理数 #有理数的加法法则 #绝对值 #AI技术 #TRO #TRO侵权 #TRO和解 #AITechLab #cpp-python #CUDA版本 #Minecraft #Minecraft服务器 #PaperMC #我的世界服务器 #ARM64 # DDColor # ComfyUI #节日 #前端开发 #Ubuntu #ESP32编译服务器 #Ping #DNS域名解析 #领域驱动 #转行 #STDIO传输 #SSE传输 #WebMVC #WebFlux #nfs #iscsi #服务器IO模型 #非阻塞轮询模型 #多任务并发模型 #异步信号模型 #多路复用模型 #kong #Kong Audio #Kong Audio3 #KongAudio3 #空音3 #空音 #中国民乐 #游戏服务器断线 # keep-alive #榛樿鍒嗙被 #地理 #遥感 #taro #工业级串口服务器 #串口转以太网 #串口设备联网通讯模块 #串口服务器选型 #clamav #Linly-Talker # 数字人 # 服务器稳定性 #外卖配送 #scanf #printf #getchar #putchar #cin #cout #主板 #总体设计 #电源树 #框图 #ET模式 #非阻塞 #Archcraft #Smokeping #工程实践 #pve #图像识别 #高考 #企业级存储 #网络设备 #多模态 #微调 #超参 #LLamafactory #命令模式 #人脸活体检测 #live-pusher #动作引导 #张嘴眨眼摇头 #苹果ios安卓完美兼容 #国产操作系统 #麒麟 #V11 #kylinos #TURN # WebRTC # HiChatBox #大模型应用 #API调用 #PyInstaller打包运行 #服务端部署 #KMS激活 #gpt #API #排序 #Linux多线程 #Spring源码 #zotero #WebDAV #同步失败 #代理模式 #aiohttp #asyncio #异步 #Langchain-Chatchat # 国产化服务器 # 信创 #软件 #本地生活 #电商系统 #商城 #ipv6 #欧拉 #duckdb #list #儿童AI #图像生成 # 模型微调 #cesium #可视化 #Syslog #系统日志 #日志分析 #日志监控 #生产服务器问题查询 #日志过滤 #.netcore # 自动化运维 #vrrp #脑裂 #keepalived主备 #高可用主备都持有VIP #实体经济 #商业模式 #软件开发 #数智红包 #商业变革 #创业干货 #材料工程 #智能电视 #挖漏洞 #攻击溯源 #编程 #n8n解惑 #Tracker 服务器 #响应最快 #torrent 下载 #2026年 #Aria2 可用 #迅雷可用 #BT工具通用 #net core #kestrel #web-server #asp.net-core #H3C #Zabbix #ZooKeeper #ZooKeeper面试题 #面试宝典 #深入解析 #大模型部署 #mindie #大模型推理 #UEFI #BIOS #Legacy BIOS #Aluminium #Google #语义搜索 #嵌入模型 #Qwen3 #AI推理 #Tetrazine-Acid #1380500-92-4 #AI智能棋盘 #Rock Pi S #wireshark #广播 #组播 #并发服务器 #因果学习 # 服务器迁移 # 回滚方案 #tcp/ip #网络 #云开发 #eureka #KMS 激活 #隐函数 #常微分方程 #偏微分方程 #线性微分方程 #线性方程组 #非线性方程组 #复变函数 #c++高并发 #Termux #Samba #SSH别名 #CS2 #debian13 #BoringSSL #企业存储 #RustFS #对象存储 #高可用 #三维 #3D #云计算运维 #asp.net上传大文件 #http头信息 #uip #支持向量机 #启发式算法 #游戏程序 #模块 #ICE #信创国产化 #达梦数据库 #CVE-2025-61686 #路径遍历高危漏洞 # 离线AI #SMARC #ARM #全文检索 #递归 #线性dp #银河麒麟服务器系统 # 代理转发 #webgl #卷积神经网络 #GPU ##租显卡 #web服务器 #ShaderGraph #图形 #Kylin-Server #服务器安装 #短剧 #短剧小程序 #短剧系统 #微剧 # 智能运维 # 性能瓶颈分析 # GPU租赁 # 自建服务器 #空间计算 #原型模式 #VMware Workstation16 #devops #音诺ai翻译机 #AI翻译机 # Ampere Altra Max #H5网页 #网页白屏 #H5页面空白 #资源加载问题 #打包部署后网页打不开 #HBuilderX #域名注册 #新媒体运营 #网站建设 #国外域名 #A2A #GenAI #easyui #VMWare Tool #I/O模型 #并发 #水平触发、边缘触发 #多路复用 #MinIO服务器启动与配置详解 #区间dp #二进制枚举 #图论 #SSH复用 #磁盘配额 #存储管理 #形考作业 #国家开放大学 #系统运维 #自动化运维 #DHCP #用户体验 #心理健康服务平台 #心理健康系统 #心理服务平台 #心理健康小程序 #mssql #算力建设 #电梯 #电梯运力 #电梯门禁 #实时检测 #lucene #SSH密钥 #SQL调优 #EXPLAIN #慢查询日志 #分布式架构 #ETL管道 #向量存储 #数据预处理 #DocumentReader #bond #服务器链路聚合 #网卡绑定 #数据报系统 #idc #nmodbus4类库使用教程 #效率神器 #办公技巧 #自动化工具 #Windows技巧 #打工人必备 #智能制造 #供应链管理 #工业工程 #库存管理 #RK3588 #RK3588J #评估板 #核心板 #hdfs # OTA升级 # 黄山派 #内网 # IndexTTS2 # 网络延迟 #clawdbot #QQbot #QQ #代理服务器 #编程助手 #跳槽 #工作 #超时设置 #客户端/服务器 #挖矿 #Linux病毒 #sql注入 #雨云服务器 #教程 #MCSM面板 #FRP #CMC # 串口服务器 # NPort5630 #WRF #WRFDA #公共MQTT服务器 #Matrox MIL #二次开发 #华为od #华为机试 #OpenHarmony #懒汉式 #恶汉式 #Gateway #认证服务器集成详解 #uniapp #合法域名校验出错 #服务器域名配置不生效 #request域名配置 #已经配置好了但还是报错 #uniapp微信小程序 # 键鼠锁定 #cpu #工程设计 #预混 #扩散 #燃烧知识 #层流 #湍流 #余行补位 #意义对谈 #余行论 #领导者定义计划 # 批量部署 #CA证书 #后端框架 #RWK35xx #语音流 #实时传输 #node #反向代理 #CS336 #Assignment #Experiments #TinyStories #Ablation #三种参数 #参数的校验 #fastAPI #MCP服务器注解 #异步支持 #方法筛选 #声明式编程 #自动筛选机制 #星际航行 #pxe #参数估计 #矩估计 #概率论 #gmssh #宝塔 #漏洞挖掘 #Exchange #free #vmstat #sar #系统安装 #rag #麦克风权限 #访问麦克风并录制音频 #麦克风录制音频后在线播放 #用户拒绝访问麦克风权限怎么办 #uniapp 安卓 苹果ios #将音频保存本地或上传服务器 #express #cherry studio #ARMv8 #内存模型 #内存屏障 # child_process #网络攻击模型 #pyqt #仙盟创梦IDE #cocos2d #图形渲染 #scikit-learn #canvas层级太高 #canvas遮挡问题 #盖住其他元素 #苹果ios手机 #安卓手机 #调整画布层级 #测速 #iperf #iperf3 #运动 #GLM-4.6V-Flash-WEB # AI视觉 # 本地部署 #分子动力学 #化工仿真 #AI Agent #开发者工具 #百度 #百度文库 #爱企查 #旋转验证码 #验证码识别 #实在Agent #基础语法 #标识符 #常量与变量 #数据类型 #运算符与表达式 #边缘AI # Kontron # SMARC-sAMX8 #Spring AOP #CNAS #CMA #程序文件 #人大金仓 #Kingbase #小艺 #搜索 #传统行业 #租显卡 #训练推理 #语义检索 #向量嵌入 #AI应用 #多进程 #python技巧 #gnu #glances #电子电气架构 #系统工程与系统架构的内涵 #Routine #轻量化 #低配服务器 #L6 #L10 #L9 #docker安装seata #LED #设备树 #GPIO #poll #OCR #文字检测 #numpy #强化学习 #策略梯度 #REINFORCE #蒙特卡洛 #ueditor导入word #Autodl私有云 #深度服务器配置 #coffeescript #软件需求 #人脸识别sdk #视频编解码 #stl #IIS Crypto #warp #composer #symfony #java-zookeeper #Prometheus #决策树 #DooTask #个性化推荐 #BERT模型 #Puppet # TTS #职场发展 #程序定制 #毕设代做 #课设 #交换机 #三层交换机 #MC群组服务器 #开关电源 #热敏电阻 #PTC热敏电阻 #个人电脑 #claude-code # 鲲鹏 #SQL注入主机 #Coturn # 权限修复 #高精度农业气象 #Moltbot #Ward #温湿度监控 #WhatsApp通知 #IoT #MySQL #戴尔服务器 #戴尔730 #装系统 #sklearn #junit #文本生成 #CPU推理 #WAN2.2 #4U8卡 AI 服务器 ##AI 服务器选型指南 #GPU 互联 #GPU算力 #nosql #数据访问 #vncdotool #链接VNC服务器 #如何隐藏光标 #dash #统信操作系统 #网络安全大赛 #人形机器人 #人机交互 #FHSS #xml #bytebase #spring ai #oauth2 #rtmp #西门子 #汇川 #Blazor # 局域网访问 # 批量处理 #江协 #瑞萨 #OLED屏幕移植 # 高温监控 #夏天云 #夏天云数据 # 环境迁移 #xshell #host key #华为od机试 #华为od机考 #华为od最新上机考试题库 #华为OD题库 #华为OD机试双机位C卷 #od机考题库 #运维 #css3 #rsync # 数据同步 #claudeCode #content7 #AI工具集成 #容器化部署 #一周会议与活动 #ICLR #CCF #YOLO识别 #YOLO环境搭建Windows #YOLO环境搭建Ubuntu #自动化巡检 #Python办公自动化 #Python办公 #科普 # ms-swift #基金 #股票 #PN 结 #超算中心 #PBS #lsf #adobe #数据迁移 #ossinsight #MinIO #moltbot #fork函数 #进程创建 #进程终止 #小智 #计算机外设 #期刊 #SCI #session #okhttp #健康医疗 #Taiji #remote-ssh #格式工厂 #boltbot #bigtop #hdp #hue #kerberos #Beidou #北斗 #SSR #信息安全 #信息收集 #阿里云RDS # AI部署 #VMware创建虚拟机 #远程更新 #缓存更新 #多指令适配 #物料关联计划 #m3u8 #HLS #移动端H5网页 #APP安卓苹果ios #监控画面 直播视频流 #防毒面罩 #防尘面罩 #Qwen3-VL # 服务状态监控 # 视觉语言模型 #身体实验室 #健康认知重构 #系统思维 #微行动 #NEAT效应 #亚健康自救 #ICT人 #新浪微博 #传媒 #DuckDB #协议 #UDP服务器 #recvfrom函数 #思爱普 #SAP S/4HANA #ABAP #NetWeaver #日志模块 #投标 #标书制作 #企业微信机器人 #本地大模型 #2025年 #AI教程 #istio #服务发现 #jquery #JADX-AI 插件 #OpenAI #故障 #starrocks #二值化 #Canny边缘检测 #轮廓检测 #透视变换 #tekton #mvc #Arduino BLDC #核辐射区域探测机器人