- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 哲学家就餐问题
问题描述一张圆桌坐着五个哲学家,每两位哲学家之间放着一根筷子,两根筷子之间放着一碗米饭.当哲学家饥饿时会试图拿起左,右两根筷子(一根一根拿).如果筷子在别人手上,则需要等待.饥饿的哲学家只有同时拿到两根筷子才可以进餐.吃完之后放下筷子继续思考.问题分析哲学家对筷子的访问是互斥的.哲学家只能一根一根的拿筷子.死锁发生的情况互斥某个资源在一段时间内只能由一个进程持有.不可剥夺进程无法被抢占.请求保持进程已经获得了一部分资源,但又提出新的资源申请,该申请无法被满
2021-04-01 22:37:26
246
原创 读者-写者问题
问题描述有读者,写者两组并发进程共享一个文件,如何才能让读者与读者之间,写者与写者之间互斥的对文件进行访问?问题分析读者与写者之间是互斥的.(如果在写文件的过程中进行读操作会导致"脏读")读者与读者之间可以并发访问文件.(因为文件并不会被修改)写者与写者之间需要互斥的访问文件.(多个文件同时写同一个文件的话会导致先前写入的数据被覆盖)解决办法设置rw信号量用于读写互斥.设置count用来记录访问文件的读进程的数量.//1.0 版本读者写者问题解决方案semaphore rw
2021-03-30 21:37:06
198
原创 java IO流
定义输入流:可以从其中读取一个字节序列从你的角度看,你能从输入流中获得你想要的数据你可以从奶牛获取奶,但是获取的同时你不能给予(再把奶塞回去)输出流:可以写入一个字节序列的对象而输出流就是你把你的数据写到想要的位置(可能远程的计算机,本地的文本文件...)同样的,写入的同时不能读取特点:数据先进先出顺序存取流具有单向性,一个流要么只读要么只写(因为要么实现了read()要么实现了write()方法)请注意! IO流是一个用来传输数据的对象任何继承自Reader或者Input
2020-09-23 22:25:25
164
原创 ioc的概念
IOCInversion of Control -> IOC 控制翻转首先明确一个观念,IOC是一种基本的设计思想,不止存在于Spring中.beans的定义:构成应用程序主干并由Spring IoC容器管理的对象称为bean the objects that form the backbone of your application and that are managed by the Spring IoC container are called beans.(某度一搜IOC十个结
2020-09-19 13:21:40
211
原创 net/http 分析
net/http 源码分析socket交互过程:)golang建立http服务器的差不多两步:注册路由,提供url和handle函数的映射//示例http.HandleFunc("/", indexHeander)http.HandleFunc("/index", indexHandle)实例化server,监听端口,建立连接log.Fatal(http.ListenAndServe(":8999", nil))先讲讲用来注册路由的HandleFunc函数.Handl
2020-08-11 22:23:58
436
原创 ideavimrc配置
vim这玩意用了真鸡儿上头,一用其他IDE就寻思能不能装这个插件,发现JB家有ideavimrc这个大宝贝,嘿嘿嘿.装完ideavim之后输入:actionlist会进入一个界面,上面显示了IDE能做的一些操作,用vim可以进行映射然后…嘿嘿嘿.下面是我的配置:希望你们也能爱上vim~~~set showmodeset clipborad=unamedset number" set relativenumberset history=2000set nocompatiblesyntax
2020-08-07 22:34:59
1827
原创 ByteBuffer.allocateDirect函数分析
在NIO中,有两种分配字节的方法:在堆中初始缓冲区public static ByteBuffer allocate(int capacity) { if (capacity < 0) throw createCapacityException(capacity); return new HeapByteBuffer(capacity, capacity);}以及在堆外创建缓冲区public static ByteBuffer al
2020-08-07 22:22:27
1636
原创 servlet-api.jar查看源码的方法
以我的情况为例IDE: ideaTomcat版本:9.0需要下载的Servlet源码版本:4.0.1方法如下idea在j项目中默认是没有HttpServlet这些类的源码的,它提供了两个方式:DownloadChoose Sources但是不知道点背还是啥原因…在普通的javaProject中可以下载的源码到了javaWeb项目中就不好使了…所以只能采用第二个方法,步骤如下:首先你要知道你想要的servlet源码是哪个版本的,Tomcat可以查看release note得知其次
2020-06-23 21:54:25
1049
1
原创 Horspool算法实现
贴上代码public static void judge (String text, String pattern) { //text是文本 pattern是模式字符串 int textIndex=pattern.length()-1;//文本游标,负责匹配 int patternIndex=pattern.length()-1;//模式下标,负责匹配 while(textIn...
2019-10-21 22:30:45
469
原创 java 自定义排序
有两种自定义排序的方法,实现Comparable接口public int compareTo(Object o) {}实现Comparator接口public class Main implements Comparable{ public int age; public String name; public Main(int age,String name) {...
2019-10-14 00:07:44
181
原创 java大整数类(超清晰)
java刷题目遇到大整数真的不要太舒服,但我发现java的大整数类功能贼多,自己掌握的很少,所以写篇博客学习一下…BigInteger和BigDecimal都位于java.math包中(不要和java.lang.Math搞混了!!).api文档中是这么介绍java.math包的:Provides classes for performing arbitrary-precision inte...
2019-10-13 10:38:09
1920
转载 idea部署servlet(超级基础)
idea版本是2019.2,一句本人情况对网上教程进行了修改(讲解过程简单粗暴).转载出处:https://blog.youkuaiyun.com/antony9118/article/details/518004041.创建新项目选中 Web Application点击确认.2.在web/WEB-INF下新建classes以及lib文件夹(等会有用)3.单击 File -> Pro...
2019-10-04 19:05:11
1049
原创 idea配置servlet出现 port out of range:-1 问题解决
我是个菜鸟(就连md都是现学的=-=),写博客对我来说可能有助于记忆.用idea配置servlet时出现该错误,百度未找到解决方法,在idea中修改端口问题未得到解决.解决方法修改该目录下Apache Software Foundation\Tomcat 9.0\conf的server.xml文件,在大概二十行的位置修改端口号,将-1改为其他值.至此问题得到解决....
2019-10-04 00:15:09
12030
6
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人