简介 NIO有三宝:Buffer,Channel,Selector少不了。本文将会介绍NIO三件套中的最后一套Selector,并在理解Selector的基础上,协助小师妹发一张好人卡。我们开始吧。 Selector介绍 小师妹:F师兄,最近我的桃花有点旺,好几个师兄莫名其妙的跟我打招呼,可是我一 ...
分类:
编程语言 时间:
2020-06-14 10:34:02
阅读次数:
113
是什么 leveldb内部实现的缓存 为什么要用 性能高于内嵌哈希表 学到什么 与(&)操作进行模运算 减少cache锁操作,可以分为多组cache 源码分析 LRUHandle 缓存中代表键值对的数据结构 // An entry is a variable length heap-allocate ...
分类:
数据库 时间:
2020-06-14 10:30:28
阅读次数:
63
free h -c 3 Mem 行(第二行)是内存的使用情况。Swap 行(第三行)是交换空间的使用情况。total 列显示系统总的可用物理内存和交换空间大小。used 列显示已经被使用的物理内存和交换空间。free 列显示还有多少物理内存和交换空间可用使用。shared 列显示被共享使用的物理内存 ...
分类:
其他好文 时间:
2020-06-13 23:12:59
阅读次数:
85
1.前言 众所周知,StringBuffer 是线程安全的 ,而StringBuilder 不是线程安全的 ,但是 StringBuilder 速度会更快。 事实上 作为一个字符串拼接 方法 ,在线程安全的应用场景几乎没有 【在频繁进行字符串运算(如拼接、替换、删除等),并且运行在多线程环境中, 则 ...
分类:
其他好文 时间:
2020-06-13 11:10:40
阅读次数:
76
1.堆【heap】 (1)堆总是一颗完全二叉树【深度为K,除了k层外,1~k-1层的结点数都达到最大值,k层所有的节点都连续集中在最左边的就是完全二叉树】 (2)堆 不是在程序编译时申请内存的,而是在程序运行时向操作系统申请内存空间,即动态分配内存空间,一般是申请/给予的过程; (3)堆通常可被看作 ...
分类:
其他好文 时间:
2020-06-13 10:35:03
阅读次数:
67
堆排序 堆排序的思想是先调用堆的inset方法,再调用堆的remove方法输出。 实现 for (i = 0; i < size; i++) heap.insert(array[i]); for (i = 0; i < size; i++) array[i] = heap.remove(); 效率 ...
分类:
编程语言 时间:
2020-06-12 01:13:05
阅读次数:
59
对一个图像实现生成缩略图 package j09; import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException; import javax.im ...
分类:
编程语言 时间:
2020-06-11 20:02:03
阅读次数:
77
# 允许最大连接数max_connections=2000# 服务端使用的字符集默认为8比特编码的latin1字符集character_set_server=utf8# insert语句大小bulk_insert_buffer_size = 256M# 服务所能处理的请求包的最大大小max_allo ...
分类:
数据库 时间:
2020-06-11 13:15:28
阅读次数:
89
这是部分学习代码 import pymysql import time import json import traceback import sys import requests import io sys.stdout = io.TextIOWrapper(sys.stdout.buffer, ...
分类:
其他好文 时间:
2020-06-10 19:08:06
阅读次数:
51
关键字:final;关键字:abstract;关键字:interface;代理模式;内部类 ...
分类:
编程语言 时间:
2020-06-10 13:20:23
阅读次数:
46