wangxiaotongfan的博客

83
原创
62
转载
2
译文
21
评论
156644
访问

我的博客文章

2017
26

Tensor Tensor

TensorFlow作为深度学习的重要开源库,学习之前最想弄清楚这个名字是怎么来的,百度了很多,对Tensor认识了,下面进行详细介绍。  Tensor中文翻译为张量,一上来给人的感觉就类似于“向量”,“矢量”之类的,下面从物理和数学两个方面对Tensor进行解释。 物理学 张量的概念早在19世纪末就被数学家提出了, 但这个概念真正发扬光大, 还是在相对论出现以后. 原因

(15)(0)
2017
07

Python中的函数中的参数

定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了。对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复杂逻辑被封装起来,调用者无需了解。Python的函数定义非常简单,但灵活度却非常大。除了正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数,使得函数定义出来的接口,不但能处理复杂的参数,还可以简化调用者的代码。位置参数我们

(102)(0)
2016十一
01

win 8 Mysql安装记

2.安装: ZIP Archive版是免安装的。只要解压就行了。不需要安装。我的放在d盘啦。 3.配置: 也就是my.ini文件的由来。 把my-default.ini(此文件是解压之后,自带的)这个文件复制一下重命名my.ini,然后替换成如下的代码即可:(把里面D:\mysql\mysql-5.6.17-winx64改成你自己的软件路径,保存)

(244)(0)
2016
29

类图详解

最近自己面试中,被写类图,(⊙o⊙)…,把里边的关系都忘的差不多了,多一些写了一篇博客,收集了一下有关类图的知识,希望对面试的同学有帮助,详见类图详解

(265)(0)
2016
09

大型网站架构系列:负载均衡详解(1)

转载自  http://www.cnblogs.com/itfly8/p/5043435.html 面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器,采用高效率的编程语言比如(Go,Scala)等,当单机容量达到极限时,我们需要考虑业务拆分和分布式部署,来解决大型网站访问量大,并发量高,海量数据的问题。 从单机网站到分布式网站,很重要的区

(284)(0)
2016
30

java8中对ConcurrentHashMap的改进

一、简单回顾ConcurrentHashMap在jdk1.7中的设计     先简单看下ConcurrentHashMap类在jdk1.7中的设计,其基本结构如图所示: 每一个segment都是一个HashEntry[] table, table中的每一个元素本质上都是一个HashEntry的单向队列。比如table[3]为首节点,table[3]->next为节点1,之后为节点2,依次类

(1387)(0)
2016
30

TreadLocal详解

ThreadLocal是什么   早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。   当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独

(263)(0)
2016
24

java多线程--condition条件

概要 前面对JUC包中的锁的原理进行了介绍,本章会JUC中对与锁经常配合使用的Condition进行介绍,内容包括: Condition介绍 Condition函数列表 Condition示例 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3496716.html   Condition介绍 Condition的作用是对锁进行更精确的控

(1408)(2)
2016
12

java多线程--JUC集合框架

概要 之前,在"Java 集合系列目录(Category)"中,讲解了Java集合包中的各个类。接下来,将展开对JUC包中的集合进行学习。在学习之前,先温习一下"Java集合包"。本章内容包括: Java集合包 JUC中的集合类 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3498454.html Java集合包 在“Java 集

(427)(0)
2016
11

java 8 中的stream

Java 8 中的 Streams 详解 Java 8 是迄今为止在语义上改动上最大的一个平台。除了最显著的 Lambda 表达式之外,还有很多初次见面的特性,例如本文主题的 Streams API。这里介绍了它出现的背景和具体用法。 为什么需要 Stream Stream 作为 Java 8 的一大

(1001)(0)
2016
08

ClassLoader和Class.forName

Class的装载分了三个阶段,loading(加载),linking(在这个过程中,又包括了验证,准备和解析三个阶段)和initializing(初始化),分别定义在The Java Language Specification的12.2,12.3和12.4。在源码中,可以发现,实际上Class.forName(className) 是调用Class.forName(className, true,

(285)(0)
2016
01

java多线程--公平锁(四)

释放公平锁(基于JDK1.7.0_40) 1. unlock() unlock()在ReentrantLock.java中实现的,源码如下: public void unlock() { sync.release(1); } 说明: unlock()是解锁函数,它是通过AQS的release()函数来实现的。 在这里,“1”的含义和“获取锁的函数acquire(1)的含

(251)(0)
2016
01

java多线程--公平锁(三)

获取公平锁(基于JDK1.7.0_40) 通过前面“Java多线程系列--“JUC锁”02之 互斥锁ReentrantLock”的“示例1”,我们知道,获取锁是通过lock()函数。下面,我们以lock()对获取公平锁的过程进行展开。 1. lock() lock()在ReentrantLock.java的FairSync类中实现,它的源码如下: final void lock()

(717)(0)
2016
01

java多线程--公平锁(二)

/*AQS(AbstractQueuedSynchronizer.java) * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group

(419)(0)
2016
01

java多线程--公平锁(一)

基本概念 本章,我们会讲解“线程获取公平锁”的原理;在讲解之前,需要了解几个基本概念。后面的内容,都是基于这些概念的;这些概念可能比较枯燥,但从这些概念中,能窥见“java锁”的一些架构,这对我们了解锁是有帮助的。 1. AQS -- 指AbstractQueuedSynchronizer类。     AQS是java中管理“锁”的抽象类,锁的许多公共方法都是在这个类中实现。AQS是独占锁(

(417)(0)
2016
01

java多线程--“升级版”生产者消费者

ReentrantLock介绍 ReentrantLock是一个可重入的互斥锁,又被称为“独占锁”。 顾名思义,ReentrantLock锁在同一个时间点只能被一个线程锁持有;而可重入的意思是,ReentrantLock锁,可以被单个线程多次获取。 ReentrantLock分为“公平锁”和“非公平锁”。它们的区别体现在获取锁的机制上是否公平。“锁”是为了保护竞争资源,防止多个线程同时操作线

(1750)(0)
2016
01

java多线程--“锁”总览

根据锁的添加到Java中的时间,Java中的锁,可以分为"同步锁"和"JUC包中的锁"。 同步锁   即通过synchronized关键字来进行同步,实现对竞争资源的互斥访问的锁。Java 1.0版本中就已经支持同步锁了。   同步锁的原理是,对于每一个对象,有且仅有一个同步锁;不同的线程能共同访问该同步锁。但是,在同一个时间点,该同步锁能且只能被一个线程获取到。这样,获取到同步锁的线程就能

(1489)(0)
2016
01

java多线程--AtomicLongFieldUpdater

AtomicLongFieldUpdater介绍 AtomicLongFieldUpdater可以对指定"类的 'volatile long'类型的成员"进行原子更新。它是基于反射原理实现的。   AtomicLongFieldUpdater示例 // LongTest.java的源码 import java.util.concurrent.atomic.AtomicLongField

(1227)(0)
2016
24

java多线程--AtomicReference

AtomicReference介绍 AtomicReference是作用是对"对象"进行原子操作。 AtomicReference源码分析(基于JDK1.7.0_40) 在JDK1.7.0_40中AtomicReference.java的源码如下: public class AtomicReference implements java.io.Serializable { p

(1532)(0)
2016
24

java多线程--AtomicLongArray

AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray这3个数组类型的原子类的原理和用法相似。本章以AtomicLongArray对数组类型的原子类进行介绍。AtomicLongArray的作用则是对"长整形数组"进行原子操作。 AtomicLongArray源码分析(基于JDK1.7.0_40) AtomicLongArra

(951)(0)
147条 共8页1 2 3 4 5 ... 下一页 尾页
img

wangxiaotongfan

等级:

排名:第13363名

博客专栏
java集合
    java集合源码分析
文章分类
文章存档
阅读排行
评论排行
推荐文章
最新评论
img