- 博客(23)
- 资源 (1)
- 收藏
- 关注
原创 [Vue基础] vue-cli搭建出的项目基本结构
├── build/ # webpack 编译任务配置文件: 开发环境与生产环境│ └── ...├── config/ │ ├── index.js # 项目核心配置│ └── ...├ ── node_module/ #项目中安装的依赖模块 ── src/│ ├── main.js # 程序入口文件
2020-05-31 18:44:41
170
原创 [js]jquery禁用input获取焦点的默认事件
$("#ele").focus(function(){ document.activeElement.blur();})
2020-05-29 15:37:46
1309
转载 [java并发]java高并发系列 - 第15天:JUC中的Semaphore(信号量)
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧Semaphore(信号量) 为多线程协作提供了更为强大的的控制方法,前面的文章中,我们学习了synchronized和重入锁ReentrantLock,这2种锁一次只能允许一个线程访问资源,而信号量可以控制有多个线程可以访问特定的资源。Semaphore常用场景:限流举个????:比如有个停车场,有5个空位,门口有门卫,手中有5把钥匙分别对应5个车位上的锁。来一辆车,门卫会给司机一把钥匙,然后进去找
2020-05-29 15:21:48
350
原创 [Vue基础] Vue中的X-Template
参考书籍:《Vue.js实战》 梁灏如果你没有使用webpack、gulp等工具,试想一下你的组件template的内容很冗长、复杂、如果都在JavaScript里拼接字符串,效率是很低的,因为不能像写HTML那样舒服,Vue提供了一种定义模板的方式,在<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content=
2020-05-28 20:38:23
425
原创 [Vue基础] Vue中的$nextTick
参考书籍:《Vue.js实战》场景:有一个div,默认用v-if将它隐藏,点击一个按钮后,改变v-if的值,让它显示出来,同时拿到这个div的文本内容。如果v-if的值是false, 直接去获取div的内容是获取不到的,因为此时,div还没有被创建出来,那么应该在点击按钮后,改变v-if的值为true,div才会被创建,此时再去获取。一、常规做法:...
2020-05-28 20:11:16
338
转载 [java并发]java高并发系列 - 第14天:JUC中的LockSupport工具类,必备技能
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧本文主要内容:讲解3种让线程等待和唤醒的方法,每种方法配合具体的示例介绍LockSupport主要用法对比三种方式,了解它们的区别LockSupport位于java.util.cuncurrent(简称JUC) 包中,算是juc中的一个基础类,juc中很多地方都会使用LockSupport,非常重要,一定要掌握关于线程等待/唤醒的方法,前面的文章已经讲过了方式1:使用Object中的wai
2020-05-28 19:23:53
339
转载 [java并发]java高并发系列- 第13天:JUC中的Condition对象
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧本文内容:synchronized中实现线程等待和唤醒Condition简介及常用方法介绍和相关实例使用Condition实现生产者和消费者使用Condition实现同步阻塞队列Object 对象中的wait,notify方法,用于线程等待和唤醒等待中的线程,大家应该比较熟悉,想再次了解的朋友可以去看第6天的文章synchronized中等待和唤醒线程示例...
2020-05-26 00:34:34
304
转载 [java并发]java高并发系列 - 第12天JUC:ReentrantLock重入锁
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧本篇文章开始讲juc中常用的一些类,估计会有是来篇。synchronized的局限性synchronized是java内置的关键字,它提供了一种独占的加锁方式。synchronized的获取和释放锁由jvm实现,用户不需要显式的释放锁,非常方便,然而synchronized也有一定的局限性,例如:当线程尝试获取锁的时候,如果获取不到锁会一直阻塞,这个阻塞的过程,用户无法控制如果获取锁的线程进入休眠
2020-05-23 10:32:15
381
转载 [java并发]java高并发系列 - 第11天:线程中断的几种方式
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧本文主要讨论一下中断线程的几种方式。通过一个变量控制线程中断示例如下:package aboutThread;import java.util.concurrent.TimeUnit;public class InterruptedBy_Variable { public volatile static boolean exit = true; public static c
2020-05-22 09:52:56
304
转载 [java并发]java高并发系列- 第10天:线程安全和synchronized关键字
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧什么是线程安全?当多个线程去访问同一个类(对象或方法)的时候,该类就能表现出正常的行为(与自己预想的结果一致),那我们就可以说这个类是线程安全的。看一段代码:...
2020-05-21 19:43:39
233
转载 [java并发]java高并发系列 - 第9天:用户线程和守护线程
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧守护线程是一种特殊的线程,在后台默默地完成一些系统性的服务,比如 垃圾回收线程、JIT线程都是 守护线程。与之相对应的用户线程,用户线程可以理解为是系统的工作线程,它会完成这个程序需要完成的业务操作。如果用户线程全部结束了,意味着程序需要完成的业务操作已经结束了,系统可以退出了。所以当系统只剩下守护进程的时候,java虚拟机会自动退出。java线程分为用户线程和守护线程,线程的daemon属性为true表示
2020-05-20 11:02:12
319
转载 [java并发]java高并发系列-第8天:线程组
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧线程组我们可以把线程归属到某个线程组中,线程组可以包含多线程 及 线程组,线程和线程组组成了父子关系,是个树形结构,如下图:使用线程组可以方便管理线程,线程组提供了一些方便我们管理线程。创建线程关联线程组创建线程的时候,可以给线程指定一个线程组,代码如下:package aboutThread;import java.util.concurrent.TimeUnit;public clas
2020-05-19 20:45:25
235
转载 [java并发]java高并发系列 - 第7天:volatile与Java内存模型
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧package aboutThread;public class About_volatile { public static boolean flag = true; public static class T1 extends Thread{ public T1(String name){ super(name); }
2020-05-18 00:07:43
270
转载 [java并发]java高并发第5天 - 深入理解进程和线程
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧进程进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。进程具有的特征动态性:进程是程序的一次执行过程,是临时的、有生命周期的,是动态产生,动态消亡的并发性:任何进程都可以同其他进程一起并发执行独立性:进程是系统进行资源分配和调度的一个独立单位结构性:进程由程序,数据
2020-05-15 15:04:05
210
转载 [java并发]java高并发系列 - 第6天:线程的基本操作
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧新建线程新建线程很简单。只需要使用new关键字创建一个线程对象,然后调用它的start()启动线程即可。 Thread thread1 = new Thread(); t1.start();那么线程start()之后,会干什么呢?线程有个run()方法,start()会创建一个新的线程并让这个线程执行run()方法。这里需要注意,下面代码也能通过编译,也能正常执行。但是,却不能新建一个线程,而是在
2020-05-15 12:05:43
258
转载 [java并发]java高并发系列 -第4天:JMM相关的一些概念
JMM(java内存模型),由于并发程序要比串行程序复杂很多,其中一个重要的原因是并发程序中数据访问 一致性 和 安全性 将会受到严重挑战。如何保证一个线程可以看到正确的数据呢? 这个问题看起来很白痴。对于串行程序来说,根本就是小菜一碟,如果你读取一个变量,这个变量的值是1,那么你读取到的一定是1,就是这么简单的问题在并行程序中居然变得复杂起来。事实上,如果不加控制地任由线程胡乱并行,即使原本是1的数值,你也可能读到2。因此我们需要深入了解并行机制的前提下,在定义一种规则,保证多个线程间可以有效地、正确地协
2020-05-14 19:39:57
260
原创 [js常用积累] js根据日期得到当天是星期几
最近遇到一个需求,前端需要在指定日期上显示对应是星期几,可以根据以下代码实现,需要传入yyyymmdd格式的日期: function getWeekDayByDate(yyyymmdd) { let y = yyyymmdd.substring(0, 4); let m = yyyymmdd.substring(4, 6); let d = yyyymmdd.substring(6)...
2020-05-13 10:50:45
630
转载 [java并发]java高并发系列-第3天:有关并行的两个重要定律
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧java高并发系列第3篇文章,一个月,咱们一起啃下java高并发,欢迎留言打卡,一起坚持一个月,拿下java高并发。有关为什么要使用并行程序的问题前面已经进行了简单的探讨。总的来说,最重要的应该是处于两个目的。第一,为了获得更好的性能;第二,由于业务模型的需要,确实需要多个执行实体。在这里,我将更加关注第一种情况,也就是有关性能的问题。将串行程序改造为并发程序,一般来说可以提高程序的整体性能,但是究
2020-05-13 10:49:34
209
转载 [java并发]java高并发系列-第2天:并发级别
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧接下来一个月,咱们一起啃下java高并发,欢迎留言打卡,一起坚持一个月,拿下java高并发。在阅读之前,你可以和我一样,了解下文章中的一些概念:什么是重入锁和不可重入锁由于临界区的存在,多线程之间的并发必须受到控制。根据控制并发的策略,我们可以把并发的级别分为阻塞、无饥饿、无障碍、无锁、无等待几种。阻塞一个线程是阻塞的,那么在其他线程释放资源之前,当前线程无法继续执行。当我们使用synch
2020-05-13 09:53:32
274
转载 [java并发概念篇]什么是重入锁和不可重入锁
本篇为转载文章:查看原文锁分为可重入锁和不可重入锁。可重入和不可重入的概念是这样的:当一个线程获得了当前实例的锁,并进入方法A,这个线程在没有释放这把锁的时候,能否再次进入方法A呢?可重入锁:可以再次进入方法A,就是说在释放锁前此线程可以再次进入方法A(方法A递归)。不可重入锁(自旋锁):不可以再次进入方法A,也就是说获得锁进入方法A是此线程在释放锁钱唯一的一次进入方法A。先举例来说明锁的可重入性:public class UnReentrant{ Lock lock = new
2020-05-13 09:51:42
481
转载 [java并发]java高并发系列-第1天:必须知道的几个概念
原文链接:查看原文感谢公众号“ 路人甲Java”的分享,如有冒犯,请联系删除,快去关注他吧接下来一个月,咱们一起啃下java高并发,欢迎留言打卡,一起坚持一个月,拿下java高并发。同步(Synchronous)和异步(Asynchronous)同步和异步通常来形容一次方法调用,同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。 而异步方法通常会在另外一个线程中“真实”地执行。整个
2020-05-08 17:44:57
384
转载 [微服务学习]一文详解微服务架构
本文将介绍微服务架构和相关的组件,介绍他们是什么以及为什么要使用微服务架构和这些组件。本文侧重于简明地表达微服务架构的全局图景,因此不会涉及具体如何使用组件等细节。转载地址:查看原文要理解微服务,首先要先理解不是微服务的那些。通常跟微服务相对的是单体应用,即将所有功能都打包成在一个独立单元的应用程序。从单体应用到微服务并不是一蹴而就的,这是一个逐渐演变的过程。本文将以一个网上超市应用为例...
2020-05-06 10:27:34
440
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人