摘要: 环境安装 Go 语言支持以下系统: Linux FreeBSD Mac OS X(也称为 Darwin) Window Linux FreeBSD Mac OS X(也称为 Darwin) Window 安装包下载地址为:https://golang.org/dl/。 Windows下直接下载对应的 阅读全文
posted @ 2017-11-19 23:46 lwli 阅读(799) 评论(0) 推荐(0) 编辑
摘要: 在flask服务端,有时候需要使用requests请求其他url,并将响应返回回去。查阅了flask文档,About Responses,可以直接构造响应结果进行返回。 If a tuple is returned the items in the tuple can provide extra i 阅读全文
posted @ 2017-07-24 10:21 lwli 阅读(1152) 评论(0) 推荐(0) 编辑
摘要: 前言 正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些匹配某个模式的文本。简单说就是一个特殊的字符串去匹配一个字符串。定义了一些规则,用于匹配满足这些规则的字符串。 对于正则表达式应该很多人第一感觉就是很难,完全没有规律,看不 阅读全文
posted @ 2017-07-16 22:26 lwli 阅读(1848) 评论(0) 推荐(0) 编辑
摘要: 同步工具类可以是任何一个对象,只要它根据其自身的状态来协调线程控制流。阻塞队列(BlockingQueue)可以作为同步工具类,其他类型的同步工具类还包括信号量(Semaphore),栅栏(Barrier)以及闭锁(Latch)。在平台类库中还包含其他一些同步工具类的类,如果这些类还无法满足需要,那 阅读全文
posted @ 2017-07-09 22:36 lwli 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 线程可能会阻塞或者暂停执行,原因有多种:等待I/O操作结束,等待获得一个锁,等待从Thread.sleep方法中醒来,或是等待另一个线程的计算结果。当线程阻塞时,它通常被挂起,并处于某种阻塞状态(BLOCKED, WAITING或TIMED_WATING)。阻塞操作与执行时间很长的普通操作的差别在于 阅读全文
posted @ 2017-07-02 22:08 lwli 阅读(3631) 评论(0) 推荐(0) 编辑
摘要: 阻塞队列提供了可阻塞的put和take方法。如果队列满了put将阻塞到有空间可用,如果队列为空,take将阻塞到有元素可用。队列可以是有界和无界的,无界的队列put将不会阻塞。 阻塞队列支持生产者消费者模式,该模式将找出需要完成的工作,和执行工作分开。生产者-消费者模式能简化开发过程,因为消除了生产 阅读全文
posted @ 2017-06-25 23:22 lwli 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 同步容器将所有对容器状态的访问都串行化,以实现线程安全性。这种方式的缺点是严重降低并发性。Java 5.0提供了多种并发容器来改进同步容器的性能。如ConcurrentHashMap代替同步且基于散列的Map,CopyOnWriteArrayList,用于在遍历操作主要操作的情况下代替同步的List 阅读全文
posted @ 2017-06-18 20:39 lwli 阅读(191) 评论(0) 推荐(0) 编辑
摘要: java平台类库包含了丰富的并发基础构建模块,如线程安全的容器类以及各种用于协调多个相互协作的线程控制流的同步工具类。 同步容器类 同步容器类包括Vector和Hashtable,是早期JDK的一部分,此外还有Collections.synchronizedXXX等工厂方法创建的。这些类实现安全的方 阅读全文
posted @ 2017-06-12 08:39 lwli 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 通过一些组合模式能够使一个类更容易成为线程安全的,并且易于维护。避免复杂的内存分析来确保线程是安全的。 设计一个线程安全的类要报案下面三个要素: 1、找出构成对象的状态的所有变量。 对象的所有域构成了对象的状态。如果对象的域是基本变量构成,那么这些域构成了对象的全部状态。如果对象的域中引用了其他对象 阅读全文
posted @ 2017-06-04 22:25 lwli 阅读(1959) 评论(0) 推荐(0) 编辑
摘要: 1、安装Bash on Windows 这个参考官网步骤,很容易安装,https://msdn.microsoft.com/en-us/commandline/wsl/install_guide 安装过程很简单,主要是从应用商店下载bash的时候,比较容易失败,可能需要多试几次。 2、配置SSHD 阅读全文
posted @ 2017-05-22 00:47 lwli 阅读(1120) 评论(0) 推荐(0) 编辑