自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Natus的博客

孤鸿寄语

  • 博客(12)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 IO模式和IO多路复用(一) 基本知识

用户空间和内核空间现在操作系统都采用虚拟寻址,处理器先产生一个虚拟地址,通过地址翻译成物理地址(内存的地址),再通过总线的传递,最后处理器拿到某个物理地址返回的字节。对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方)。操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为了保证用户进程不能直接操作内核(kernel),保证...

2018-10-16 10:59:50 250

原创 Redis中一些常见的面试题

前言这里整理了一些关于Redis中常见的面试题,希望可以帮到还在求职路上的你们。1. 什么是Redis?Redis 是一个基于内存的高性能key-value数据库,由C语言编写。引申问题常见nosql数据库分类及区别2. Redis的特点Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库...

2018-10-13 19:27:31 456

原创 Java虚拟机核心知识(八) 性能调优

JVM调优工具JconsoleJDK自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。jProfile商业软件,需要付费。功能强大。VisualVMJDK自带,功能强大,与JProfiler类似。推荐。如何调优观察内存释放情况、集合类检查、对象树上面这些调优工具都提供了强大的功能,但是总的来说一般分为以下几类功能。堆信息查看(1)可查看堆空...

2018-10-08 01:14:45 238

原创 Java虚拟机核心知识(七) 垃圾回收器

前言通过上篇文章的学习,我们一起了解JVM中垃圾收集的几种常用算法,接下来,我们来学习垃圾收集器有哪些?垃圾收集器使用了哪些算法?Serial收集器Serial收集器是最古老的收集器,它的缺点是当Serial收集器想进行垃圾回收的时候,必须暂停用户的所有进程,即stop the world。到现在为止,它依然是虚拟机运行在client模式下的默认新生代收集器,与其他收集器相比,对于限定在单个...

2018-10-07 18:59:10 132

原创 Java虚拟机核心知识(六) 垃圾回收算法

前言通过前两篇文章的学习,我们已经知道JVM是如何判断对象是不是可以回收,以及回收是如何发起的。那么之后是如何进行收集的?其实是这样的,GC算法的思想主要有三种:(1) Mark-Sweep(2) Mark-Compact(3) Copying当前JVM的GC一般都是分代收集,几种垃圾回收算法进行组合。分代收集根据分代收集的模型,一般将内存区域分为新生代(Young Generat...

2018-10-06 22:37:14 168

原创 Java虚拟机核心知识(五) HotSpot的准确式GC

前言在上一篇文章我们学习到了Java虚拟机是如何利用可达性算法判断对象是否需要回收的,由于在GC进行时,必须暂停所有的Java执行线程(Sun称之为“Stop The World”),所以,虚拟机必须尽量的优化GC过程的效率,减少暂停的时间。那么对于GC Roots,HotSpot是如何快速确定的呢?对象的创建首先,我们需要知道在JVM中,对象是如何被创建的。而对象的创建通常是通过new一...

2018-10-05 23:16:55 2758 1

原创 Java虚拟机核心知识(四) 如何判断对象是否需要回收

前言前面两篇文章,给大家讲解了Java的内存区域以及内存溢出和内存泄漏的区别,对于程序计数器、虚拟机栈、本地方法栈这三个区域的数据,它们的生命周期可以说是伴随着整个线程周期,每个栈帧分配多少内存,也基本是在类结构确定的时候就已知了(即编译期),因此这几个区域的内存分配和回收,都具有确定性,我们不需要考虑太多的回收问题。我们常说的垃圾回收,主要指的是Java堆和方法区的垃圾回收。那为什么我们关注...

2018-10-05 13:46:20 289

原创 Java虚拟机核心知识(三) 内存溢出和内存泄露

前言上一章我们已经了解了Java虚拟机的内存模型、各个内存区域存储的内容以及OutOfMemory经常出现的区域。其实还有另外一个与OOM息息相关的概念: 内存泄露,这也是大家在面试经常碰到的问题,那么,它们之间究竟有什么联系与区别呢?本文为大家来详细解析一下。二者的关系内存泄漏(memory leak) : 指程序在申请内存后,无法释放已申请的内存空间,虽然一次内存泄漏似乎不会有大的影响,...

2018-10-04 22:55:41 280

原创 Java虚拟机核心知识(二) JVM内存模型

说起内存,大家很容易就想到了内存溢出,对于Java工程狮来说,遇到OutOfMemory可以说是家常便饭了。在学习如何定位这些异常发生的原因并提出解决方案之前,我们必须了解一下,Java虚拟机是如何划分自己的内存区域的。一. Java内存区域一个Java进程启动后,会被划分一块类似于疆土的内存区域,虚拟机将这块大的内存,按照所存储的数据类型,划分为不同的区域进行管理,Java虚拟机的运行时数...

2018-10-04 12:05:41 169

原创 Java虚拟机核心知识(一) 序

作为一名Java程序员,你是否也曾经想深入理解Java虚拟机,是否也想探寻它的深奥?在这里,本文针对JVM中最重要的几部分进行讲解。一. 什么是Java虚拟机要弄懂Java虚拟机,我们首先要知道我们为什么要弄懂Java虚拟机?  Java,在全世界范围吸引了900多万的开发者,全世界使用Java的设备多大几十亿台,其中包括11亿台个人计算机、30亿部移动电话和其他手持设备以及大量的机顶盒、...

2018-10-03 22:53:25 181

原创 React Native 混合开发 mac环境部署

React Native 混合开发 mac环境部署1. cd 需要放置的目录下(项目的根目录/项目中自己创建的文件夹)$ touch package.json{ "name": "JMS_New",//此处替换你的项目名称 "version": "0.0.1", "private": true, "scripts": { "start": "node node_modules

2017-10-10 16:09:57 304

原创 Mysql 数据库迁移

Mysql 数据库迁移1.基本命令启动MySQL服务: sudo start mysql停止MySQL服务: sudo stop mysql修改 MySQL 的管理员密码:sudo mysqladmin -u root password newpassword设置远程访问(正常情况下,mysql占用的3306端口只是在IP 127.0.0.1上监听,拒绝了其他IP的访问(通过netstat可以

2017-10-10 16:03:53 228

基于CSocKet的网络应用五子棋设计与实现

基于CSocKet的网络应用五子棋设计与实现 是一份关于CSocket套接字开发的一片专业性文档

2015-05-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除