程序老兵的博客

用来整理我的知识碎片,也希望帮到他人。只要往前走,就不会迟。精疲力尽的时侯应该选择休息,切不可放弃。...

在Scrapy中启动shell来调试

在Scrapy中写爬虫时,有时想在spider运行到某个位置时暂停,查看被处理的response, 以确认response是否是期望的。这可以通过 scrapy.shell.inspect_response 函数来实现。以下是如何在spider中调用该函数的例子:import scrapyclas...

2017-11-23 16:44:56

阅读数 1401

评论数 0

常见的Python 2 和 3 差别

Python2.7print "hello"helloPython3.0print "hello" File "tmp.py", line 1 print "hello" ^ ...

2017-10-30 11:20:30

阅读数 1333

评论数 0

理解Python协程:从yield/send到yield from再到async/await

Python中的协程大概经历了如下三个阶段: 1. 最初的生成器变形yield/send 2. 引入@asyncio.coroutine和yield from 3. 在最近的Python3.5版本中引入async/await关键字一、生

2017-10-27 10:16:20

阅读数 10734

评论数 2

maven项目test报错Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin

今天导入一个原来的maven项目,项目上右键运行JUnit Test,可以通过测试,但是运行mvn test时,报错: Results :Failed tests: twm.camera.core.OutPutStringTest.testPrint(): org/junit/AssertT...

2017-09-17 10:13:15

阅读数 2157

评论数 0

热门移动端H5开源前端开发框架搜集整理

ant design官方网站:ant.design 介绍:这里蚂蚁金服出的一款框架,提供了桌面版和移动版两大块。移动版的首页是:https://mobile.ant.design/index-cn。 应用者:蚂蚁金服、阿里巴巴、口碑、滴滴 Framework7官网:framework7.ta...

2017-09-12 16:39:51

阅读数 5975

评论数 0

配置Android Studio的缓存文件路径(释放你的C盘)

Android Studio默认安装完后会在C:\Users\YourName.xxx 缓存一些数据,有限的C盘很容易爆增。 如果你的C盘也像我这样捉襟见肘,或者你是处女座的,那么请看完本文,结果会让你超爽。 土豪请绕道。。。Android Studio默认的缓存目录,主要有三个占空间的文件夹...

2017-09-11 15:35:49

阅读数 15138

评论数 1

Android native和h5混合开发几种常见的hybrid通信方式

传统的JSInterface首先先介绍一下最普通的一种通信方式,就是使用Android原生的JavascriptInterface来进行js和Java的通信。具体方式如下: 首先先看一段html代码<html xmlns="http://www.w3.org/1999/xhtml...

2017-08-28 20:43:01

阅读数 1083

评论数 0

微服务架构框架选择:Spring Cloud 和 Dubbo对比

知乎转载楼层1: 从项目的背景来看,Dubbo 国内用的公司挺多,国内影响力大,Spring Cloud 自然在国外影响力较大,所以这个来看不分伯仲了,毕竟都有大公司在使用。 从社区的活跃度来看,可以看下各自的Github托管项目来区分。Dubbo · GitHub 与 Spring Clou...

2017-08-21 16:44:19

阅读数 1864

评论数 0

hessian简单示例

创建一个对外接口public interface Basic { String hello(String name); String say(String msg); int sum(int a,int b); }实现该接口并继承HessianServletpublic cla...

2017-07-26 09:03:41

阅读数 404

评论数 0

wkhtmltopdf:html转pdf、html转image以及cannot connect to X server问题解决

最近优化WMS系统的供应商协同平台,一切很顺利。就在该里程碑快结束时,有了新的需求。 由于月对帐单是通过HTML表格形式展示给供应商看的,供应商纷纷表示这样非常不错,沟通及交互非常高效, 但是。。。。 但是。。。。 在打印时,格式很难调整,能不能转换成WORD或PDF文档的形式打印呢? ...

2017-07-09 17:32:34

阅读数 4775

评论数 0

mysql slave创建:mysqldump参数--master-data

在恢复mysql从库时,通常我们把mysql从库利用从主库dump下来的文件恢复完成后,就需要确定binlog文件和position位置,调用change master to开启从库。 那么如何确定position位置呢? 网上很多告诉你先到master库show master status查...

2017-06-15 22:05:10

阅读数 462

评论数 0

Linux启动顺序、运行级别及开机启动

一、启动顺序当我们经过BIOS引导,并选择了Linux作为准备引导的操作系统后,接下来的执行顺序如下:1、加载并执行内核第一个被加载的东西就是内核。然后把内核在内存中解压缩,就可以开始运行了。2、/sbin/init进程init进程是接下来第一个被启动运行的(非内核进程),因此它的进程编号PID的...

2017-06-06 10:59:53

阅读数 14196

评论数 0

开源SDK实现Android视频直播

最近一段时间,视频直播可谓大火。在视频直播领域,有不同的商家提供各种的商业解决方案,包括软硬件设备,摄像机,编码器,流媒体服务器等。本文要讲解的是如何使用一系列免费工具,打造一套视频直播方案。视频直播流程视频直播的流程可以分为如下几步: 采集 —>处理—>编码和封装—>推流到服...

2017-06-02 12:03:52

阅读数 9506

评论数 2

从零开始实现Java多线程数据库连接池(附一个神秘的问题)

本例采用mysql数据库,因此请先下载mysql-connection.jar 众所周知,创建数据库连接需要消耗较多的资源,且创建时间也较长。如果网站一天100万PV(假设每个页面都有DB读取或修改操作),程序就需要创建100万次连接,极大的浪费资源。 事实上,同一时间需要创建数据库连接的请求数...

2017-05-25 16:54:17

阅读数 12639

评论数 12

Java多线程/并发26、阻塞队列BlockingQueue

BlockingQueue接口定义了一种队列,这种队列通常容量是提前固定(确定了容量大小)的。容量满时往BlockingQueue中添加数据时会造成阻塞,容量为空时取元素操作会阻塞。我们可以认为BlockingQueue队列是一个水库。水库满了的时侯,上游的水就要被拦住,不能再往水库里灌了。平时农...

2017-05-07 15:25:58

阅读数 2160

评论数 0

Java多线程/并发25、Exchanger线程数据交换

Exchanger用于线程间的数据交换。它提供一个同步点,在这个同步点两个线程可以交换彼此的数据。 这句话说到两个关键点: Exchanger只能用于两个线程互相交换数据。如果有三个线程呢?对不起,臣妾做不到…… Exchanger会产生一个同步点。一个线程先执行到达同步点,就会阻塞,等到另一个...

2017-05-07 15:19:49

阅读数 947

评论数 0

Java多线程/并发24、Countdownlatch应用以及与CyclicBarrier的区别

有时候会有这样的需求:多个线程同时工作,其中几个可以随意的并发执行,但有一个线程需要等其他线程工作结束后,才能运行。举个例子,我们知道的迅雷下载,会同时开启多个线程分块下载一个大文件,每个线程下载固定的一段,最后由另外一个线程校验并拼接这些分段。这种场景可使用CountDownLatch来控制并发...

2017-05-07 15:17:15

阅读数 901

评论数 0

Java多线程/并发23、循环屏障CyclicBarrier

CyclicBarrier 直译叫循环屏障或循环分界点。让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续工作。打个比方,F1大奖赛共5支车队参赛。第一站:上海站。比赛马上要开始了,各个车队都在准备,但是先到达起跑线准备就绪的车...

2017-05-04 21:03:28

阅读数 953

评论数 0

Java多线程/并发22、信号量Semaphore

Semaphore通常用于设置一些资源(如数据库连接池,程序某个变量)可供线程使用的数量,它有两个很常用的方法是acquire()和release()。打个通俗的比方:一个饭店有10间包房,客人消费前先到前台领一张包房券(调用一次acquire 包房券-1),进入包房用餐直到酒足饭饱后,再到前台退...

2017-05-04 21:00:14

阅读数 900

评论数 0

Java多线程/并发21、利用Condition来实现阻塞队列

Java文档上的例子,利用Condition来实现阻塞队列。 假设有一个固定大小的缓冲区(缓冲区是队列,遵守FIFO),支持存和取方法。如果缓冲区为空时尝试取数据,那么线程将阻塞,直到缓冲区有一个可用的数据;如果缓冲区满了,这时尝试写数据,那么线程将被阻塞直到有可用空间。我们希望有两个独立的等待...

2017-05-04 20:56:33

阅读数 967

评论数 0

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