上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 30 下一页
摘要: ApplicationContext @Configuration @Bean @ComponentScan @Scope @Lazy @Conditional @Component @Import 未完待续 <用法,流程> 阅读全文
posted @ 2020-09-30 13:09 qianbuhan 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 最重要的原则 找出可能变化的部分,独立出来,不要和不需要变化的代码混在一起面向接口编程,不要针对实现编程多用组合,少用继承松耦合对象之间的交互对扩展开放,对修改关闭依赖抽象,不依赖具体类最少知识原则,一个类对于其他类,知道的越少越好别调用我,我会调用你一个类只有一个引起变化的原因 警惕 为实际需要而 阅读全文
posted @ 2020-09-30 12:56 qianbuhan 阅读(50) 评论(0) 推荐(0) 编辑
摘要: AQS(AbstractQueuedSynchronizer): 获取锁: 独占式获取 accquire acquireInterruptibly tryAcquireNanos 共享式获取 acquireShared acquireSharedInterruptibly tryAcquireSha 阅读全文
posted @ 2020-09-30 12:52 qianbuhan 阅读(68) 评论(0) 推荐(0) 编辑
摘要: CAS: Compare and swap 比较和交换 在指令的级别,保证该操作的原子性。 原理 如果这个内存地址的值是我所期望的值,那么就把它设成新值。 比如,如果内存地址为100的位置的值是1,我想把值改为2,那么CAS赋值操作就是这样的:如果内存地址为100的位置值是1,那么就把值设为2.所以 阅读全文
posted @ 2020-09-30 12:39 qianbuhan 阅读(182) 评论(0) 推荐(0) 编辑
摘要: FutureTask 单线程执行框架。 获得线程执行的返回值。 Callable包装成FutureTask,传入Thread对象中(继承了Runnable),start启动线程,然后通过Future接口的get()拿到返回值。 Callable<Object> callable = new Call 阅读全文
posted @ 2020-09-30 12:14 qianbuhan 阅读(78) 评论(0) 推荐(0) 编辑
摘要: CountDownLatch 只能用一次。 CountDownLatch countDownLatch = new CountDownLatch(5); 当一组线程调用countDownLatch的await方法时,进入等待。直到其他线程调用完5次countDown方法。 CyclicBarrier 阅读全文
posted @ 2020-09-30 11:15 qianbuhan 阅读(36) 评论(0) 推荐(0) 编辑
摘要: Java中启动一个线程的方式只有两种: 继承Thread类,实例化,调用start()通过Runnable new 出Thread对象,调用start() 也就是说,在Java中除了Thread类中的start方法,没有第二种方案可以启动一个线程。 synchronized 内置锁,线程进入该对象的 阅读全文
posted @ 2020-09-30 10:52 qianbuhan 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 进程、线程、协程 进程:程序运行资源分配的最小单位,进程内部有多个线程,会共享这个进程的资源 线程:CPU调度的最小单位,必须依赖进程而存在。 协程:依赖线程而存在,完全由程序所控制,也就是在用户态执行。一个线程的多个协程的运行是串行的。当一个协程运行时,其它协程必须挂起。同样存在上下文切换问题。更 阅读全文
posted @ 2020-09-30 10:01 qianbuhan 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 插入 不改变树原来的结构,小的插到左边,大的插到右边。 以此类推: 查询 和插入一样,小的往左找,大的往右找 删除 叶子节点(不存在后继结点):直接删除存在后继节点:使用中序遍历的后继结点取代要删除的节点 后继节点存在右子树:将此右子树移到该后继节点的位置。后继结点不可能存在左子树,若存在则不是后继 阅读全文
posted @ 2020-07-09 16:25 qianbuhan 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 解决方案:加上 !important 示例: .button-list > button:hover{ background: rgba(4, 81, 148, 0.33) !important; color: #80DFF6 !important; } 原因 js优先权高于css,所以使用js操作 阅读全文
posted @ 2020-01-15 17:09 qianbuhan 阅读(304) 评论(0) 推荐(0) 编辑
上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 30 下一页