tech
CS2106 Lab
trivial ideas or great ideas
Read note0 comments0 likes
Personal blog
What I learn and write for a living.
trivial ideas or great ideas
Read note学习和生活
Read notenote down loopholes of my academic learning
Read note多线程基础 我们经常听说四核八线程等,所谓线程如同前台一样,可以处理task。但是线程从哪里取register呢?register是由核心提供的,每个核心有自己的一组registers。 如果两个线程使用同一个核心,那么就需要registers上下文的切换,在现代优化中切换已经很快了,但是这样毕竟还是同时只能有一个线程在运行。这种设计并非不如单线程操作,因为我可以例如间断性地发送网络请求,或者进行磁盘读写操作,由于这些非常慢,单线程需要等待很久,这时我们切换到其他任务,这些与线程无关地操作就可以自己进行了。 如果使用不同核心,那么就是真正的并行计算了。 Java并行计算语法 基础 使用java.lang.Thread包 创建线程初始任务:new Thread(() {}); 执行任务:.start() 暂停任务:Thread.sleep()为使当前运行这一命令的线程暂停 协调dependency 我们会使用Java.util.concurrent.CompletableFuture,这是一个Monad,存储了是否complete的side information。 新建一个任务: Co
Read note多元一维约束与多元多维约束的简单数学推导
Read noteKMP算法补充解释
Read noteKruskal算法和Prim算法
Read note