3 JavaAlliance

尚未进行身份认证

我要认证

努力前行的学徒

等级
TA的排名 4k+

简易版消息队列的实现

简易版消息队列的实现import java.util.Random;import java.util.Vector;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;import java.util.stream.IntStream;public class Factory {

2020-07-22 16:57:32

操作系统--课堂问答笔记06

1.回忆上一节课的一些重要概念:就绪,阻塞/唤醒,挂起/激活,就绪挂起,阻塞挂起,就绪队列,阻塞队列,就绪挂起队列,阻塞挂起队列 。就绪:进程处于万事俱备只欠东风(就差CPU的执行)的状态。已经为进程创建好了PCB,并放到就绪队列中排队,就等CPU资源就可以执行了。PCB:进程控制块阻塞:进程因为需要某个条件(如I/O)而暂时停止CPU的执行,唤醒:把进程由阻塞变为就绪(之前的条件已经得到...

2020-04-18 18:15:39

操作系统--课堂问答笔记05

1.一个程序是顺序执行的,为什么在同一个程序中, A与B的执行可以不按顺序?一个程序是顺序执行的,为什么在同一个程序中,如有:A:N:=N+1; //:=表赋值,早期pascal语言的赋值符号B:Print(N); N:=0;//Print(N)表输出N的值A与B的执行可以不按顺序?因为一个程序可能分为多个进程运行,那么A语句和B语句就可能在不同进程中,而进程是可以并发执行的。所以AB可...

2020-04-18 17:21:07

操作系统--课堂问答笔记04

1.什么是可同时访问资源和互斥资源?怎么区分这两种资源?你知道的可同时访问资源有哪些?互斥资源又有哪些?互斥和同步是后面章节一个重要的概念,著名的PV原语就是解决这个问题的,大家可以百度互斥和同步。可同时访问资源是允许在一段时间内由多个进程“同时”对它们进行访问;互斥资源是在一段时间内,只允许一个进程访问该资源。同步不是允许多个进程同时访问,而是保证有序访问.磁盘、内存等是可同时访问资源,...

2020-04-18 12:23:34

操作系统--课堂问答笔记03

1. 1-5的第一部分,描述了一个事件:人机矛盾,那么如何理解人机矛盾?机器的速度和人的速度的不匹配导致资源浪费。2.计算机可以同时做多件事情,这是对的吗?“同时”这两个字要打引号,因CPU在任何时刻只能做一件事,宏观上可以理解计算机可以同时做多件事情;即在任何一个时间点,计算机只做一件事;但考察一个时间段,计算机完成了多件事情。按照事先制定的规则排队。就像你一个晚上做了很多门课的作业...

2020-04-18 11:57:37

操作系统--课堂问答笔记02

1.存储器分级理解?主要是为了解决速度不匹配的问题。2.物理地址和逻辑地址的理解?逻辑地址到物理地址的转换是后面内存管理这一章很重要的内容,因此一定要区别物理地址和逻辑地址)举个例子,我们班级去礼堂开会,给我们安排的位置是100-149号位置,接下来每个同学我都分配一个号码从0-49,安排0号坐100这个位置,1号坐101这个位置…那么什么是物理地址,什么逻辑地址?礼堂的实际位置是物理,...

2020-04-18 11:44:16

操作系统--课堂问答笔记01

1.计算机是不是一定要有OS,没有OS的计算机存在吗?操作系统(Operating System)。 一开始是没有OS的,不是一出现计算机就有OS。没有OS的计算机是没有灵魂的躯壳,现代意义的计算机都是要有OS的。正是因为没有OS,计算机很难用,才慢慢出现OS。就好比说,你面前的这张桌子,你叫它挪个位置,它会动吗?操作系统就是这么一个中间人,你给它发指令就可以了。你叫它往东它绝不往西,至于...

2020-04-18 11:35:16

第一章 操作系统引论

(一)操作系统概念1、操作系统的地位和目标(1)操作系统是一类重要的系统软件。(2)操作系统是仅靠计算机硬件的系统。3)操作系统的设计目标?答:方便性,有效性,可扩充性,开放性。2、操作系统的作用用户与计算机硬件系统之间的接口;计算机系统资源的管理者;用作扩充机器(或虚拟机);3、操作系统的组成及层次模型4、操作系统的定义及实例(1)操作系统的定义?操作系统是最...

2020-04-18 11:24:23

Vue和后端开发的参数传递操作方式(包括增、删、改、查)

一、查询操作比如vue里的js这样写queryStudentList(tableQuery, tablePage) { return request({ url: '/queryStudentList', method: 'post', params:{ ...tablePage }, data: { ...

2020-04-16 17:28:40

mybatis里的sql中按collection拼接查询语句,字符串类型的collection的写法有区别

第一种:list里的元素不是string字符串,而是一个实体类 <if test="studentList!=null and studentList.size>0"> and a.id in <foreach collection="studentList" index="index" item="item" open="(" s...

2020-04-16 14:48:13

vue+ElementUI实现文件的单个下载,以及批量压缩下载

一、单个文件下载思路很简单: 当页面加载时,那么下面的href里就会执行downloadFile()这个函数,然后 downloadFile()里面访问后台接口,得到文件流,然后赋值给href属性,所以当我们点击“下载”时,浏览器就会去下载文件了前端代码如下:<el-link type="primary" :href="downloadFile(scope.row.attachment...

2020-04-16 12:42:32

vue+elementUi的文件上传

讲解:uploadUrl是上传到文件服务器的后端接口地址,比如UPLOAD_URL: '"http://127.0.0.1:8080/myblog/common/file/upload"' <el-upload class="upload-demo" :action="uploadUrl" ...

2020-04-16 09:10:02

vue + element 表格多选框回显

项目开发使用的elemnetUI的table组件,牵扯到一个多选框的回显机制,这里记录一下。那么想要实现table的多选框回显,前提得有多选框,而实现回显也主要有依赖多选框自带的几个事件,当表格存在多选框时这几个事件便可以生效:<el-table row-key="id" :data="tableData" v-loading...

2020-04-16 08:37:42

Vue里的ElementUi点击行 如何获取 Table 的行索引

文档中有一个:row-class-name="tableRowClassName"属性,可以获取到当前行的index, 看下面代码,注意 :row-class-name是写在el-table标签上的,不要写错了位置哦!<template> <el-table :data="tableData2" style="width: 100%" :row-...

2020-04-16 08:20:51

cnpm的使用

1、安装cnpm,输入以下命令:npm install -g cnpm --registry=https://registry.npm.taobao.org如下图:2、输入cnpm -v ,检测是否正常,但是这里会报错。3、添加系统变量path的内容因为cnpm会被安装到D:\Develop\nodejs\node_global下(注意:node.js当初被安装到D:\Develop...

2020-03-29 15:32:19

你们当时是如何把系统不停机迁移到分库分表的?

1、面试题现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表(也就是单库)动态切换到“分库分表”上?2、面试官心里分析你看看,你现在已经明白为啥要分库分表了,你也知道常用的分库分表中间件了,你也设计好你们如何分库分表的方案了(水平拆分、垂直拆分、分表),那问题来了,你接下来该怎么把你那个单库单表的系统给迁移到分库分表上去?所以这都是一环扣一环的,就是看你有没有全流...

2020-01-21 08:50:42

分库分表的连环炮

1、面试题为什么要分库分表(设计高并发系统的时候,数据库层面该如何设计)?用过哪些分库分表中间件?不同的分库分表中间件都有什么优点和缺点?你们具体是如何对数据库如何进行垂直拆分或水平拆分的?2.面试官心里分析其实这块肯定是扯到高并发了,因为分库分表一定是为了支撑高并发、数据量大两个问题的。而且现在说实话,尤其是互联网类的公司面试,基本上都会来这么一下,分库分表如此普遍的技术问题,不问实在是不...

2020-01-20 11:16:44

如何设计一个高并发系统?

1、其实所谓的高并发,如果你要理解这个问题呢,其实就得从高并发的根源出发,为啥会有高并发?为啥高并发就很牛逼?我说的浅显一点,很简单,就是因为刚开始系统都是连接数据库的,但是要知道数据库支撑到每秒并发两三千的时候,基本就快完了。所以才有说,很多公司,刚开始干的时候,技术比较low,结果业务发展太快,有的时候系统扛不住压力就挂了。当然会挂了,凭什么不挂?你数据库如果瞬间承载每秒5000,8000...

2020-01-19 16:17:00

分布式事务问题以及解决方案

分布式系统的事务,如下图,在员工系统里面首先调用本系统的接口来网员工数据表里面插入一条数据,然后通过远程调用财务系统和请假系统的接口来分别往财务数据表和请假数据表里面各插入一条数据! 如果发生了异常,比如说第一步插入员工数据没问题,第二步插入财务数据(比如给张三账户添加1000块钱)也没问题,但是在第三步插入请假数据的时候出异常了,这个时候事务回滚只能回滚“员工系统”自己系统的数据,如果要想回滚“...

2020-01-19 15:24:56

终于有人把“TCC分布式事务”实现原理讲明白了

之前网上看到很多写分布式事务的文章,不过大多都是将分布式事务各种技术方案简单介绍一下。很多朋友看了还是不知道分布式事务到底怎么回事,在项目里到底如何使用。所以这篇文章,就用大白话+手工绘图,并结合一个电商系统的案例实践,来给大家讲清楚到底什么是 TCC 分布式事务一、业务场景介绍咱们先来看看业务场景,假设你现在有一个电商系统,里面有一个支付订单的场景。那对一个订单支付之后,我们需要做下面...

2020-01-19 15:18:21

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv3
    阅读者勋章Lv3
    授予在CSDN APP累计阅读博文达到30天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。