Silentdoer

导航

上一页 1 2 3 4 5 6 ··· 43 下一页

2023年12月4日 #

分片/分区和副本

摘要: slot也有分区的意思;(redis里) 这是两个很重要的概念,新的存储中间件如ES、Kafka、MongoDB等都用了这两种技术; 分片/分区是实现数据分流的重要手段,也是实现动态扩容的重要手段; 而副本则是冗余数据实现高可用 而数据具体是放哪个分片则是通过路由来实现,kafka它要求所有的数据都 阅读全文

posted @ 2023-12-04 10:58 Silentdoer 阅读(31) 评论(0) 推荐(0) 编辑

2023年12月2日 #

试着设计一个自己的语言

摘要: 1.最重要的一点是一致性(初版本先用自然语言的形式设计语法) 2.优雅(先实现一版,后续改进) 3.静态类型 4.自然语言的语法,且容易转换为中文表述 5.可扩展,即初期肯定不会实现很多功能,后面要加的功能不能加上来和现有的设计不一致 大概设想: 注释和java的保持一致,但是支持 /* * 这种方 阅读全文

posted @ 2023-12-02 11:14 Silentdoer 阅读(4) 评论(0) 推荐(0) 编辑

2023年11月23日 #

Dart通过Ffi来实现字符串类型在Isolate里共享的方法

摘要: 其实就是将字符串转换为字节数组,然后用\0作为结尾表示字符串的结束; 这样就可以定义一个字节数组作为字符串的容器(当然会有要求字符串不能超长,否则会截断,和C语言的字符串使用方式很像了) 而且\0在java,js里打印都是会没有任何显示的(但是会占用字节),所以很适合当作字符串结尾来用(因为\0在字 阅读全文

posted @ 2023-11-23 22:58 Silentdoer 阅读(26) 评论(0) 推荐(0) 编辑

2023年11月22日 #

Java Young GC和Old GC的概念

摘要: 1.java内存模型里有年轻代和老年代的概念; 年轻代:顾名思义其实就是新创建的堆内存对象都会在年轻代里; 老年代:就是年轻代里的对象经过一定时间后"变老"了,进入老年代; 那年轻代的对象 什么时候 进入老年代 呢? 默认情况下是 对象 在年轻代 的GC 15次后 仍然存活(即不是那种创建后很快就释 阅读全文

posted @ 2023-11-22 09:35 Silentdoer 阅读(222) 评论(0) 推荐(0) 编辑

2023年11月21日 #

java finally一定会执行吗?

摘要: 1.答案是不一定,而且很容易弄出不执行的情况; 最简单的:在IDEA上执行: try { log("aaa"); Thread.sleep(10000); log("bbbb"); } catch(Exception e) { log("ddd"); } finally{ log("eee"); } 阅读全文

posted @ 2023-11-21 14:17 Silentdoer 阅读(154) 评论(0) 推荐(0) 编辑

2023年11月12日 #

工厂模式的本质

摘要: 转自知乎大神大宽宽的文章:https://www.zhihu.com/question/42975862(禁言了连收藏都不让收藏) 【通篇看下来,Factory要解决的是,无法动态创建类型的问题(虽然反射可以),即一个new方法,可以动态传入类型名,部分参数来动态创建该类型名实例和初始化】 【而且还 阅读全文

posted @ 2023-11-12 17:42 Silentdoer 阅读(6) 评论(0) 推荐(0) 编辑

抢占式调度理解

摘要: 1.抢占式调度应该这样理解,调度那肯定是调度器调度,比如操作系统; 因此这个抢占式是指操作系统会抢占式调度线程,线程A获得了CPU后,过一段时间会被操作系统给抢掉给其他线程; 抢占式还有个重要概念是,线程有优先级,优先级高的线程可以通过操作系统抢占CPU 调度肯定是调度器来调度,所以对于Linux系 阅读全文

posted @ 2023-11-12 17:27 Silentdoer 阅读(67) 评论(0) 推荐(0) 编辑

CopyOnWriteArrayList和Vector的区别

摘要: 1.Vector的get方法也会加锁,即get期间是无法set或者add或remove的; 2.CopyOnWriteArrayList是get不加锁,但是add、set、remove等操作是会加锁的,而且注意CopyOnWriteArrayList加锁也是在方法一开始就加锁 ,而不是之前自己理解的 阅读全文

posted @ 2023-11-12 17:27 Silentdoer 阅读(54) 评论(0) 推荐(0) 编辑

java sleep和wait方法的区别,可重入锁的概念

摘要: 1.sleep是Thread里的静态方法,表示将当前线程睡眠一段时间的意思,它不会释放在此线程此时synchronized(lock)的lock对象的锁; 2.wait方法是任意对象都有的方法,任意对象都能被synchronized,当对对象obj.wait()时,如果当前线程已经通过synchro 阅读全文

posted @ 2023-11-12 17:27 Silentdoer 阅读(32) 评论(0) 推荐(0) 编辑

Function函数类型和class类型的异同

摘要: 比如: typedef FuncType = String Function(String str); 然后我们就可以: FuncType aa = (String str) => str.trim(); aa(" ff"); // 或aa.call(" ff"),执行返回"ff" 但是它是可以转换 阅读全文

posted @ 2023-11-12 17:26 Silentdoer 阅读(25) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 43 下一页