2019/4/19 wen 线程2】的更多相关文章

2019.3.18 C O D E T1 树上直接贪心,环上for一遍贪心 哇说的简单,码了将近一下午终于码出来了 感觉自己码力/写题策略太糟糕了,先是搞了一个细节太多的写法最后不得不弃疗了,然后第二次思路又有问题,最后重构了两遍代码 大概先是需要多想,想清楚了不要先考虑细节,果断写+调 废话结束 对于入度大于一且不在环上的点直接贪心留最大的 对于一个完美无瑕的环直接断最小的(指没有被环以外的点指着) 对于入度大于一且在环上的点,先假装它就是普通的入度大于一的点来做并记录每个点是否断了环上的边和…
接口入参 只有一个参数,叫啥都没问题 有两个参数以上,需使用@Param,否则名字依次为0.1.2和param1.param2.param3 一般用#,防sql注入:偶尔用$,比如需要动态表名等 接口返回结果 有resultMap和resultType resultMap需要定义一个resultMap元素,然后在元素里面把下划线转为驼峰 resultType一般对应一个实体类,又或者HashMap(不是map),要写类的全路径,这样就需要在select里把下划线转驼峰 但下划线转驼峰最好用map…
Java SE 19 虚拟线程 作者:Grey 原文地址: 博客园:Java SE 19 虚拟线程 CSDN:Java SE 19 虚拟线程 说明 虚拟线程(Virtual Threads)是在Project Loom中开发的,并从 Java SE 19 开始作为预览功能引入 JDK. 在线程模型下,一个 Java 线程相当于一个操作系统线程,而这些线程是很消耗资源的,如果启动的线程过多,会给整个系统的稳定性带来风险. 虚拟线程解决了这个问题,从 Java 代码的角度来看,虚拟线程感觉就像普通的…
# 线程池 # 实例化线程池 ThreadPoolExcutor (推荐cpu_count*(n+1)) # 异步提交任务 submit / map # 阻塞直到任务完成 shutdown # 获取子线程的返回值 result # 使用回调函数 add_done_callback (1)基本用法: from concurrent.futures import ThreadPoolExecutor def func(i): print("thread is start",i) print…
1.不可变对象 指对象一旦被创建状态不能再改变.任何修改都会创建一个新的对象,如 String.Integer及其它包装类. 2.能否创建一个包含可变对象的不可变对象? 可以.不要共享可变对象的引用就可以了,如果需要变化就返回原对象的一个拷贝.最常见的例子是对象中包含一个日期对象的引用. 3.java 创建对象的方式 采用new 通过反射 采用clone 通过序列化机制 前2者都需要显式地调用构造方法. 造成耦合性最高的恰好是第一种,因此你发现无论什么框架,只要涉及到解耦必先减少new的使用.…
2019/3/8 USACO测试 这是第三次考试了,不过这一次没有上一次考得好,也算是比较失误的,有一道题思路对但是写挂了. 还是看一下试题安排: 题号 试题分组 考察算法 思维难度 代码难度 1 银组\(T1\) 贪心 ★ ★ 2 银组\(T2\) 简单\(DP\) ★★ ★★ 3 银组\(T3\) 推导+离散化+差分 ★★★ ★★★ 4 金组\(T1\) 树形\(DP\)+二次扫描换根 ★★★ ★★ 这一次就有点坑了,知道\(T4\)才是金组的但是实际上\(T3\)才是最难的,这个和\(NO…
1 string与stringbuilder 并不是stringbuilder任何时候都在性能上占优势,在少量(大约个位数)的字符串时,并不比普通string操作快. string慢的原因不是string.conact(),而是string大量操作时,产生新的对象以及GC回收对象而造成的性能低下. stringbuilder使用前,最好估算一下大约的长度,否则默认16.每次超过长度后将自动翻倍增长. string.concat本质速度比stringbuider的append快,因为本质都是增加字…