- 博客(15)
- 资源 (3)
- 收藏
- 关注
原创 win7+ubuntu16.04双系统 ubuntu下只能连接无线网,或者有线网时而能用时而不能用的问题
问题描述:win7+ubuntu16.04双系统 ubuntu下只能连接无线网,或者有线网时而能用时而不能用的问题。具体,在win7下上网一切正常,然而在ubuntu有时出现不能连上网关的现象。具体表现为执行ifconfig 发现没有ipv4地址由于我是拨号接网关由dhcp自动分配ip的,解决问题过程如下:1.首先 ifconfig 发现只有ipv6地址,没有ipv42. 查看 /et...
2018-10-31 21:03:21 344
原创 设计模式(十八) 备忘录模式
备忘录模式: 在不破坏封装性的前提下,捕获一个对象的内部状态, 并在该对象之外保存这个状态。这样以后可将该对象恢复到原先保存的状态备忘录模式角色:Originator 发起人角色Memento 备忘录角色Caretaker 备忘录管理员角色public class Originator{ private String state=""; public String getSta...
2018-10-31 11:55:33 92
原创 设计模式 (十七) 门面模式
门面模式 也叫外观模式,是一种常用的封装模式。 要求一个子系统的外部与其内部通信必须通过一个统一的对象进行。 门面模式提供一个高层次的接口,使得子系统更易于使用。举个例子,对应一个写信的过程,就是一个人自己写信,先写内容,再写信封,再放到信封里,然后邮寄。后来邮局开了个服务,只要告诉我内容和地址就可以了,其他的就不用管了。这就是门面模式。简单的说, 门面对象是外界访问子系统内部的唯一通道,不管...
2018-10-29 22:16:52 90
原创 tensorflow学习笔记各个函数解析
弄清以下问题的含义:1.tf.train.global_step获取全局训练步数, 由 各种损失函数优化器中的minimize()方法负责自动加1 sess.run( fetches, feed_dict=None, options=None, run_metadata=None)fetches: A single graph elemen...
2018-10-29 16:48:02 120
原创 设计模式(十六) 观察者模式
观察者模式也叫发布/订阅模式, 定义一种1对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新观察者模式的几个角色:Subject 被观察者。定义被观察者必须实现的职责,它必须能够动态的增加,取消观察者。 要有管理观察者并通知观察者。Observer观察者。观察者接收到消息后,进行update操作,对接收到的信息进行处理。ConcreteSubject...
2018-10-29 14:02:30 102
原创 二叉树的先序,中序,后序遍历
首先为了方便大家记忆,作个解释。先序(preorder) ,中序(inorder),后序(postorder) 这里指的是根节点的遍历顺序,确切叫先根(先根再左右),中根(先左再根再右),还是(先左后又再根)后根的顺序输出。定义TreeNodepublic class TreeNode{ TreeNode left; TreeNode right; int val; TreeNode...
2018-10-22 17:32:27 169
原创 java 对象的创建
java 对象创建的步骤虚拟机遇到new指令时,首先去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否被加载,解析和初始化过,如果没有执行类加载过程。在类加载检查通过后,接下来虚拟机将新生对象分配内存,对象所需内存大小在类加载过后是完全确定的。 在堆中为java对象分配内存有两种方式:指针碰撞 ( bump the pointer ) 这...
2018-10-20 17:58:32 118
原创 java内存模型
java虚拟机运行时数据区域包含5个部分:1. 程序计数器PC当前线程所执行的字节码的行号指示器, java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的。 每个线程都有自己的PC,各个线程之间计数器互不影响,线程私有。2. java虚拟机栈,线程私有。java每个方法执行时都会创建一个栈桢,用于存储局部变量表,操作数栈,动态链接,方法出口等信息。 每个方法从调用到执行...
2018-10-19 23:00:13 101
原创 伪NIO编程,利用线程池改进BIO
利用线程池改进请求和线程的1:1所带来的大量连接所带来的大量线程创建问题。伪NIO TimeServer源码public class MockTimeServer { public static void main(String[] args){ int port=9001; if(args!=null&&args.length>...
2018-10-17 17:31:23 345
原创 java线程池ThreadPoolExecutor和阻塞队列BlockingQueue,Executor, ExecutorService
ThreadPoolExecutor参数最全的构造函数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ...
2018-10-17 15:31:43 5072
原创 Integer parseInt() 和valueOf()
java 中Integer.parseInt(String x) 和Integer.valueOf(String x) 其中valueOf()源码:valueOf 利用parseInt() 转变成整数后,再调用下面的valueOf(int i) public static Integer valueOf(int i) { if (i >= IntegerCache...
2018-10-16 21:23:45 136
原创 BIO编程
传统同步阻塞模型开发中,ServerSocket负责绑定IP,启动监听端口,意思就是说listen阶段就可以连接了TimeServer 源码分析import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;/** * Created by zzy on 18-10-16. */publ...
2018-10-16 21:19:02 143
原创 UNIX网络5种I/O模型
阻塞I/O 模型, 进程空间调用recvfrom时,系统调用直到数据包到达且被复制到应用进程的缓冲区中或者发生错误时才返回,在此期间一直会等待,进程在从调用recvfrom开始到它返回的整段时间内都是被阻塞的,因此被称为阻塞I/O模型。非阻塞I/O模型: recvfrom从应用层到内核的时候,如果该缓冲区没有数据的话,就直接返回一个EWOULDBLOCK错误,一般都对非阻塞I/O模型进行轮询检...
2018-10-15 11:55:20 161
原创 java I/O演进之路
java1.4之前,java 对I/O支持并不完善,主要问题是:没有数据缓冲区,I/O性能存在问题没有c/c++ 中channel概念,只有输入输出流同步阻塞I/O通信(BIO),通常会导致通信线程被长时间阻塞支持的字符集有限,硬件可移植性不好java 1.4修复了以上问题包括:进行异步I/O操作的缓冲区 ByteBuffer进行异步I/O操作的Pipe进行I/O操作(同步或...
2018-10-15 11:18:21 195
原创 树状数组系列
树状数组 binary indexed tree的应用:适合解决单点更新,区间求和,更新情况少的场景。 求和时间复杂度logn如果是更新则需要n树状数组为了方便,数组下标从1开始。对于已知数组a[i] ,重新构建一个c[i]. 其中c[i]=a[i-2^k+1]+…+a[i];其中k是一个数的二进制表示中从右边数遇到1之前0的个数比如对于数字4(100) k=2.2^k可以用O(1)求出...
2018-10-15 10:56:50 79
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人