java并发编程实战总结(一)

1. 前言 该书由Doug Lea之外的另外一位Java并发大神Brian Goetz和Tim Peierls合著,算是Java并发领域的一本经典书籍。此书从2013年入手之后,拿起放下了三次。之前两次自己对并发的研究还不是很深,基本属于一知半解,工作当中也极少用到并发,看了就忘。最近半年在阅读JDK源代码,特别是阅读完部分java.util.concurrency包之后,对并发的感觉更深。这个
分类: 其他 发布时间: 05-13 23:57 阅读次数: 2

Java多线程问题

一. Java多线程: Java给多线程编程提供了内置的支持。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 这里定义和线程相关的另一个术语--进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。一个线程不能独立的存在,它必须是进程的一部分。一个进程一直运行,直到所有的非守护线程都结束运行后才能结束。 多线程能满足程序员编写高效率的程序来达到充分利用CPU的目的。 二
分类: 其他 发布时间: 05-13 23:57 阅读次数: 3

Mysql 游标

CREATE DEFINER = 'root'@'localhost' PROCEDURE zswms.test2() begin declare package_id_ varchar(20); declare done int ; declare cur cursor for SELECT DISTINCT package_id FROM shipment_serial_error WHERE package_id IN (SELECT box
分类: 数据库 发布时间: 05-13 23:57 阅读次数: 5

小刘同学的第一百三十八篇日记

今天又是日记。 什么时候能写博文? 明天!明天第一件事情,就是看代码写博文! 明天第一件事情就是看代码,写博文! 明天第一件事就是看代码写博文!
分类: 其他 发布时间: 05-13 23:57 阅读次数: 2

Scrapy爬虫框架补充内容一(Linux环境)

Scrapy爬虫框架结构及工作原理详解 scrapy框架的框架结构如下: 组件分析: ENGINE:(核心):处理整个框架的数据流,各个组件在其控制下协同工作 SCHEDULER(调度器):负责接收引擎发送来的请求,并压入队列,在引擎再次请求时返回 SPIDER(蜘蛛):负责从网页中提取指定的信息,即item并产生对新页面的下载请求 DOWNLOADER(下载器):用于下载网页内容(即发送HTTP请求/接受HTTP请求)并将内容返回给ENGINE ITEM PIPELINES(项目管道):主要
分类: 其他 发布时间: 05-13 23:57 阅读次数: 4

C语言实现可复用栈

一、思考   最开始写的栈,通过宏来改变元素数据类型,在同一程序中只能用于一种数据类型,想要用于多种数据类型则要复制代码并改名。那么,有没有方法不复制代码就可以用于多种数据类型? 二、基本思路   在我的经验中,栈内的数据不参与运算,对元素的操作只有两种——流入和流出栈。也就是说,数据类型不重要,只要做到正确流入流出即可。(void*) 三、栈的源码   共2个文件,x_sq_stack.h、x_sq_stack.c。莫纠结前缀x,与代码无任何关系。 1 /*****************
分类: 其他 发布时间: 05-13 23:57 阅读次数: 4

cors(Cross-origin resource sharing)跨域资源共享

  阮一峰老师的文章(http://www.ruanyifeng.com/blog/2016/04/cors.html)跨域资源共享详解和https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS developer.mozilla的解释和定义其实已经很清楚。   
分类: 其他 发布时间: 05-13 23:57 阅读次数: 5

Launcher研究资料收集(2)--WeakReference

如果你想写一个 Java 程序,观察某对象什么时候会被垃圾收集的执行绪清除,你必须要用一个 reference记住此对象,以便随时观察,但是却因此造成此对象的 reference 数目一直无法为零, 使得对象无法被清除。  java.lang.ref.WeakReference  不过,现在有了 Weak Reference之后,这就可以迎刃而解了。如果你希望能随时取得某对象的信息,但又不想影响此对 ...
分类: 移动开发 发布时间: 05-13 23:57 阅读次数: 3

tp5多入口配置

手册里可能有写,但不是特别清晰,在这给个实例,有两种方式: 1.多个入口文件: 将public下的index.php复制一份,粘贴、重命名为对应模块的名字,如admin: 编辑admin.php的内容,修改模块绑定的代码: // 定义应用目录 define('APP_PATH', __DIR__ . '/../application/'); // 绑定当前访问到index模块 define('BIND_MODULE','admin/main'); //就是这里,把'index'改成'admi
分类: 其他 发布时间: 05-13 23:57 阅读次数: 4

在C/C++中调用Java

Java跨平台的特性使Java越来越受拓荒人员的欢送,但也常常会听到不少的抱怨:用Java开发的图形用户窗口界面每次在提议的时候都会跳出一个控制台窗口,这个控制台窗口让原本颇为棒的界面失神不少。怎么能够让颠末Java启示的GUI程序不弹出Java的管教台窗口呢? 真实那时得多风行的开荒情况好比JBuilder、Eclipse都是使用纯Java开拓的集成情况。这些集成环境发动的时辰切实不会掀开一个 ...
分类: 编程语言 发布时间: 05-13 23:57 阅读次数: 4

【软件工程实践 · 团队项目】 第二次作业

队员姓名与学号(标记组长) 学号 姓名 20165211 丁奕(组长) 20165208 孔月 20165230 田坤烨 20165226 刘香杉 队名 快奶我一口 队员风采: 全军出击!!!! 团队的首次合照 团队的特色描述 我们敲认真!
分类: 其他 发布时间: 05-13 23:57 阅读次数: 3

Elasticsearch - 使用kibana

安装 下载安装包 官网下载地址:https://www.elastic.co/downloads/kibana 我这里云服务器内存已经不够用了,就下载了windows版本,如图: 下载好后,将文件解压缩至:D:\Program Files\kibana-6.2.4-windows-x86_64\ 修改配置文件 D:\Program Files\kibana-6.2.4-windows-x86_64\config\kibana.yml 将'elasticsearch.url:'修改为之前部署的e
分类: 服务端 发布时间: 05-13 23:57 阅读次数: 5

rpm包管理和源码包管理

(1)软件类型 源码包 需要gcc编译 nginx-1.12.1.tar.gz 二进制包 已编译 mysql-community-common-5.7.12-1.el7.x86_64.rpm 常见的二进制包 系统平台 包类型 工具 在线安装(自动解决依赖关系) Redhat/Centos RPM rpm,rpm
分类: 其他 发布时间: 05-13 23:57 阅读次数: 2

.Net转Java自学之路—基础巩固篇五(单例模式)

保证类在内存中对象的唯一性。 实现:   1、想构造函数私有化。这样对方程序创建就无法初始化,已达到不允许其它程序创建对象的目的。   2、在本类中用new来创建一个本类的对象。   3、提供一个公用的函数返回该对象。方便与其它程序获取该对象。 体现:   1、私有化构造函数。   2、创建一个私有并静态的本类对象。   3、创建一个公用的static方法来返回该对象。 单例模式的延迟加载模式,当并发访问公用的static方法时,容易出现安全问题(线程安全问题) //饿汉式 class Sin
分类: 其他 发布时间: 05-13 23:57 阅读次数: 2

CSTC/APIO2018凉凉记

CSTC/APIO2018凉凉记 前言 从\(5.5\)晚上的火车到\(5.14\)早上的高铁 \(10\)天的时间真的过去的很快。 眨眼间,就到了今天晚上的颁奖。 至于结果如何,反而并不是那么重要了。 这次的比赛很明显的感受就是和全国的高手同台竞技, 不难感受到自己的实力果然还是弱。 也见到了\(dwk\)和\(refun\),果然大佬就是和我这种蒟蒻不一样, 我还是有很多的地方需要向别人学习。 \(17-18\)这一年的比赛渐渐走向了尾声了。 我也应该抓紧时间让自己更强了。 对于这篇游记,
分类: 其他 发布时间: 05-13 23:57 阅读次数: 4

《Maven实战》学习笔记(4)--常用插件

需要注意一些插件版本,因为有些版本在下载依赖是会出现问题,所以不要使用较新的版本 1.创建源码jar包 启动命令:mvn package,这里人为指定到了verify <build>     <plugins>         …………         <plugin>             <groupId>org.apache.ma ...
分类: 企业开发 发布时间: 05-13 23:57 阅读次数: 5

Ruby / Rails开发工具Aptana Studio 3(基于Eclipse)安装及使用

Windows下Rails开发,可以用Aptana Studio(就是对eclipse进行了简化的一个开发工具,支持ruby,rails,php,web工程的开发),也可以用Eclipse加插件,或者随便用个� ...
分类: 企业开发 发布时间: 05-13 23:57 阅读次数: 2

(六)实战:构建 GitHub 项目

Jenkins 不是一个对开发零基础的人去用的工具。不管你要构建什么样的项目,首先要有这么个项目存在,而且还要知道如何运行该项目。 快速创建 GitHub 项目 如果你想快速的使用 GitHub 来维护你的自动化测试项目,请阅读该教程。 (一)认识Git与GitHub (二)GitHub注册与Git安装 (三)Git提交代码到GitHub (四)Git克隆与更新代码 Jenkins 配置 Git 首先,登录 Jenkins ,在首页找到 “系统管理 -> Global Tool Configu
分类: 其他 发布时间: 05-13 23:57 阅读次数: 2

Bridal gowns wedding

Went to the "Golden September and silver October" marriage season, "long 99", "10 all 10 United States" led to wave after wave of orgasm marriage, wedding hot market also ...
分类: 编程语言 发布时间: 05-13 23:57 阅读次数: 4

(一)认识Git与GitHub

Git的诞生 Linus Torvalds在1991年创建了开源系统Linux,在2002年以前,世界各地的志愿者把源代码文件通过diff的方式发给Linus,然后由Linus本人通过手工方式合并代码!然后,Linux系统已经发展了十年了,代码库之大让Linus很难继续通过手工方式管理了。 于是,Linus Torvalds花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了! Git介绍 Git是一个开源的分布式版本控制系统,用以有
分类: 其他 发布时间: 05-13 23:57 阅读次数: 5