socket_log
1.介绍重要的socket()函数 1.1.socket():返回一个文件描述符实际上所有的读取都是通过文件描述符来进行读取,文件描述符表示一个进程与打开文件之间对应关系,使用int 唯一标识文件,下次进行读取的时候也通过打开文件时候返回的文件标识符进行读取!网络读取也会是一样的
1.介绍重要的socket()函数 1.1.socket():返回一个文件描述符实际上所有的读取都是通过文件描述符来进行读取,文件描述符表示一个进程与打开文件之间对应关系,使用int 唯一标识文件,下次进行读取的时候也通过打开文件时候返回的文件标识符进行读取!网络读取也会是一样的
1、缓冲区 不管是输入还是输出,为了减少刷内存操作,一般都有一个缓冲区的,所以一般情况下都是先缓冲到缓冲区,当缓冲区满的时候、文件关闭或者手动刷新的时候才会读写到终端1.1输出函数区别cout << flush:刷新缓冲区到终端(<<操作符具有调用函数指针
1. 理解c指针 个人感觉要想理解指针就必须要理解内存是如何分配的,否则也不算是真的弄懂了吧!1.内存分配 静态存储区在程序编译的时候就已经分配好了,在程序的整个运行期间都存在,比如全局变量、static,还有常量(字符串常量等) 栈和Java感觉是一样的,主要就是函数的内部内
1. IO和NIO IO:分为字节IO,字符IO,网络IO,磁盘IO。每次读取或者写入只能以字节或者字符的方式进行操作。效率低,可能会产生阻塞 NIO:非阻塞IO, 关键类有Selector,Channel,Buffer,channel就像是一个管道流,不论是从buffer读
1.ArrayList:public class ArrayList<E> extends AbstractList<E>implements List<E>, RandomAccess, Cloneable, java.io.Serializ
1.概述:volatile相当于是synchronized的弱实现,一种稍弱的同步机制,只实现了可见性,没有实现原子性。用来确保将变量的 更新操作通知到其他线程。 2.原理:被声明了volatile的变量上的相关操作(比如get和set)不会参与指令重排序。直接在主存中,对其他变
1.总述 Iterator:遍历并选择序列中的对象,只可以向后遍历的迭代器(ListIterator extends Iterator 可以前后遍历)只有三个方法:hasNext():判断有没有元素next():取出下一个,到达集合末尾抛出异常remove():将迭代器新近返回
1.String之我见 Java字符串就是Unicode字符序列 String在java中不是基本类型,是一个类,其实现是通过final char value[],所以查询、替换和数组一样; public final class String 说明String 是不可变的,类中每
1.java JAVA多线程和并发基础 JAVA NIO 事务 1.java 7 字符串switch 新特性 nio 2.java 8 新特性 Lamdba 3.测试工具 checker-framework 2.框架 Spring源码 开涛的博客 mybatis、spring面向
1. Javac 编译原理javac编译器的任务就是将符合Java语言规范的Java的源代码转化成符合JVM语言规范的class字节码。也就是说将 源代码转化成JVM能够识别的一种语言,之后JVM负责将其转化成机器能够识别的机器语言。 Javac编译器工作原理: 2. 词