摘要:
如果多线程下使用这个类,不过多线程如何使用和调度这个类,这个类总是表示出正确的行为,这个类就是线程安全的;不做正确的同步,在多个线程之间共享状态的时候,就会出现线程不安全; 类的线程安全表现为: 操作的原子性 内存的可见性 栈封闭 所有的变量都是在方法内部声明的,这些变量都处于栈封闭状态; 无状态 阅读全文
摘要:
CAS(Compare And Swap),比较并更新,指令级别保证这是一个原子操作,三个运算符: 一个内存地址V,一个期望值A,一个新值B;基本思路:如果地址V上的值和期望值A相等,就把新值B更新到内存,如果不是,循环(死循环,自旋)里不断的进行CAS操作; 如下图: 如果需要获取原子操作类的值并 阅读全文
摘要:
等待/通知机制,是指一个线程A调用了对象O的wait方法进入等待状态,而另一个线程B调用了对象O的notify方法或notifyAll方法,线程A收到通知后从对象O的wait方法返回,进而执行后续操作; 等待/通知的相关方法是任意Java对象都具备的,因为这些方法被定义在所有对象的超类java.la 阅读全文
摘要:
线程自然终止:自然执行完或抛出未处理异常 Java中有3种方法可以使正在运行的线程终止运行: 1.使用退出标志使线程正常退出; 2.使用stop()方法强行终止线程,但这个方法不推荐使用,因为stop()和suspend(),resume()一样,都是作废的方法,使用它们会发生不可预料的结果;sto 阅读全文
摘要:
Spring 的核心是 ApplicationContext,它负责管理 Bean的完整生命周期;当加载 Bean 时,ApplicationContext 发布某些类型的事件;例如,当上下文启动时,ContextStartedEvent 发布消息,当上下文停止时,ContextStoppedEve 阅读全文
摘要:
为Nginx创建使用的用户 www; groupadd www useradd -g www www 配置nginx.conf user www www; #设置值和CPU核心数一致 worker_processes auto; #日志位置和日志级别 error_log /usr/local/web 阅读全文
摘要:
No route info of this topic异常 使用RocketMQ发送消息抛出异常,异常如下: 上述异常报错的是找不到主题路由信息; 报错原因一般如下 如果NameServer中不存在该主题的路由信息,并且没有开启自动创建主题,则抛出 No route info of this top 阅读全文
摘要:
如果SpringBoot版本与SpringCloud版本不一致,SpringBoot应用启动会报错; 解决方案: 版本对应关系可以在 https://start.spring.io/info 上查看; 官方有一个提供配置的网站,https://start.spring.io;可以选择需要的组件,还能 阅读全文
摘要:
前端路由 路由是根据不同的 url 展示不同的内容或页面; 前端路由是客户端浏览器可以不依赖服务端,不需要重新请求,可根据不同的URL渲染不同的视图页面 单页面的路由方式有两种: 哈希模式(利用hashchange事件监听url的hash的改变) history模式(使用此模式需要后台模式配合把接口 阅读全文
摘要:
npm install 几种命令模式: npm install moduleName 安装模块到项目目录下 npm install -g moduleName npm install -g 将模块安装到全局,npm config prefix 查看具体安装到哪个位置 npm install --sa 阅读全文