文章分类 - Old
摘要:首先打开VS菜单栏-调试-窗口-线程 首先运行程序。其次,我们需要等线程创建之后才能设置断点,不然我们看到的程序只有main函数一个thread。 a)单击【调试】,选择【线程】,那么我们就可以开始多线程调试了; b)如果需要对某一个thread挂起,单击对应的thread,选择【冻结】即可; c)
阅读全文
摘要:linux的同步IO操作函数: sync、fsync与fdatasync VFS(Virtual File System)的存在使得Linux可以兼容不同的文件系统,例如ext3、ext4、xfs、ntfs等等,其不仅具有为所有的文件系统实现一个通用的 外接口的作用,还具有另一个与系统性能相关的重要
阅读全文
摘要:突然想聊聊这个话题,是因为知乎上的一个问题多次出现在了我的Timeline里:请问,多个线程可以读一个变量,只有一个线程可以对这个变量进行写,到底要不要加锁?可惜的是很多高票答案语焉不详,甚至有所错漏。所以我想在这篇文章里斗胆聊聊这个水挺深的问题。受限于个人水平,文章若有错漏,还望读者不吝赐教。 首
阅读全文
摘要:cache通常被翻译为高速缓冲存储器(以下简称“高速缓存”),虽然现在cache的含义已经不单单指CPU和主存储器(也就是通常所谓的内存)之间的高速缓存了,但在本文中所谓的cache依旧特指CPU和主存储器之间的高速缓存。 这篇文章诞生的源头是我之前在stackoverflow看到的一个问题: Wh
阅读全文
摘要:保护模式汇编系列之一 - 初探保护模式 为了后面学习操作系统的需要,从今天开始我要研究x86的汇编了。所以我决定开始总结并连载x86的汇编系列,这是第一篇——初探保护模式。 我假定读者接触过16位的汇编语言,并理解汇编语言的基本概念、熟悉8086处理器采用的“段寄存器 * 16 + 偏移地址”的寻址
阅读全文
摘要:从文章的题目我们就知道今天是以一个进程的角度来看待自身的运行环境。我们先提出第一个问题,什么是进程?对于这个问题,各种参考资料上给出的定义都显得过于抽象而难以理解,下面是我自己的定义: 进程是一个动态的概念,它是静态的可执行文件执行过程的描述,其包含了一个静态程序运行时的状态和其所占据的系统资源的总
阅读全文
摘要:最近学习网络层协议的时候,注意到了IP协议中数据包分片的问题。下图是IP协议头的数据字段的示意: 如图所示,IP协议理论上允许的最大IP数据报为65535字节(16位来表示包总长)。但是因为协议栈网络层下面的数据链路层一般允许的帧长远远小于这个值,例如以太网的MTU(即Maximum Transmi
阅读全文
摘要:前几天实验室的群里扔出了这样一个问题:TCP连接建立的三次握手过程可以携带数据吗?突然发现自己还真不清楚这个问题,平日里用tcpdump或者Wireshark抓包时,从来没留意过第三次握手的ACK包有没有数据。于是赶紧用nc配合tcpdump抓了几次包想检验一下。但是经过了多次实验,确实都发现第三次
阅读全文
摘要:1.安装pytesseract pip install pytesseract 编辑pytesseract.py文件: 注意务必确保地址正确,保存后关闭。 2.安装Pillow pip install Pillow 3.下载并安装Tesseract-OCR 下载地址:https://digi.bib
阅读全文
摘要:Scrapy Splash Scrapy Splash 用来爬取动态网页,其效果和scrapy selenium phantomjs一样,都是通过渲染js得到动态网页然后实现网页解析,selenium+phantomjs是用selenium的Webdriver操作浏览器,然后用phantomjs执行
阅读全文
摘要:使用tinyproxy进行ip代理 爬虫经常用到ip代理。解决方案无非几种: 1.网络上寻找一些免费代理,优点:免费不限量;缺点:可用性较低,验证费时间费资源。一些有免费代理的网站,西刺代理,站大爷,89免费代理等等,网上可以搜出一大堆。 2.购买代理ip,和找免费的差不多,一般有免费代理ip的网站
阅读全文
摘要:这是我的第一个问题:) 我有一个堆文件,我打开它,如下所示; ifstream in ( filename, ios :: binary | ios :: in ) 然后,我希望在unsigned int hold中保存2字节数据; unsigned int hold; in . read(stat
阅读全文
摘要:(1)short i = 0x8000;//有警告:“初始化”: 截断常量值”(2)int j = i;//无警告 因为(1)0x8000是数字,数字默认是int型的,int的表示范围比short大 ,所以从int隐式转换 为short会警告截断 。如果改成显示转换 short i = (short
阅读全文
摘要:如果你用过或了解过MySQL,那你一定知道自增主键了。每个自增id都是定义了初始值,然后按照指定步长增长(默认步长是1)。虽然,自然数是没有上限的,但是我们在设计表结构的时候,通常都会指定字段长度,那么,这时候id就有上限了。既然有上限,就总有被用完的时候,如果id用完了,怎么办呢?今天就一起来学习
阅读全文
摘要:一、什么是幂等? 看一下维基百科怎么说的: 幂等性: 多次调用方法或者接口不会改变业务状态,可以保证重复调用的结果和单次调用的结果一致。 二、使用幂等的场景 1、前端重复提交 用户注册,用户创建商品等操作,前端都会提交一些数据给后台服务,后台需要根据用户提交的数据在数据库中创建记录。如果用户不小心多
阅读全文
摘要:导读:Docker 如今的体量与当初的潜在愿景相比实在太过渺小,本文将带你了解 Docker“落得如此田地”的原因和真相的细节。 Docker 还活着。尽管它近两三年的境况并不理想,但它还在苦苦挣扎,试图找到自己的商业价值。就在上周,Docker 宣布更改 Docker 软件的许可条款。在不久的将来
阅读全文
摘要:因为项目需要选择数据持久化框架,看了一下主要几个流行的和不流行的框架,对于复杂业务系统,最终的结论是,JOOQ是总体上最好的,可惜不是完全免费,最终选择JDBC Template。 Hibernate和Mybatis是使用最多的两个主流框架,而JOOQ、Ebean等小众框架则知道的人不多,但也有很多
阅读全文
摘要:一、Nginx 简介 二、Nginx 入门 三、Nginx 实战案例 Http 反向代理 Https 反向代理 负载均衡 网站有多个 webapp 的配置 静态站点 搭建文件服务器 解决跨域 一、Nginx 简介 什么是 Nginx? Nginx (engine x) 是一款轻量级的 Web 服务器
阅读全文
摘要:本文主要讨论Netty NioEventLoop原理及实践,关于Netty NioEventLoop,首先要知道NioEventLoop是什么,为什么它会是Netty核心Reactor处理器,实现原理是什么,进而再讨论Netty对其的实现及使用上我们可以学到哪些。 EventLoop是一个React
阅读全文
摘要:你知道的越多,不知道的就越多,业余的像一棵小草! 你来,我们一起精进!你不来,我和你的竞争对手一起精进! 曾经有这么一道面试题:从 URL 在浏览器被被输入到页面展现的过程中发生了什么? 相信大多数准备过的同学都能回答出来,但是如果继续问:收到的 HTML 如果包含几十个图片标签,这些图片是以什么方
阅读全文

浙公网安备 33010602011771号