java多线程-进程与线程(一)
java多线程-进程与线程(一)
进程
进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。
一个进程就是一个正在执行程序的实例,包括程序计数器,寄存器和变量的当前值...
java多线程-线程安全与锁优化(二)
java多线程-线程安全与锁优化(二)
线程安全
如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。
或者说:一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是说我们不用考虑同步的问题。 ...
java多线程-Thread,Runnable的实现(三)
Date: 2017-04-12 10:10:17
java多线程-Thread,Runnable的实现(三)
java需要实现多线程的方法有两种:
继承Thread,或者实现Runnabel接口。
Thread
package cn.thread.first.thread;
class MyThread extends Thread {
private in...
[自动化] Ansible之使用Playbooks详解
一、Playbook简介Playbook是由一个或多个play组成的列表,主要功能是将task定义好的角色归并为一组进行统一管理,也就是通过Ansible的模板将多个play组织在一个Playbook中运行。二、playbook格式playbook由YMAL语言编写。YAML参考了其他多种语言,包括:XML、C语言、Python、Perl等。MAL格式是类似于JSON的文件格式,便于人理解和阅读,
java多线程-synchronized实现(四)
java多线程-synchronized实现(四)
synchronized同步
Synchronized是Java中解决并发问题的一种最常用的方法,也是最简单的一种方法。Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。
从语法上讲,Synchronized总共有三种用法:
(1)修饰普通方法 ...
java多线程-synchronized原理(五)
java多线程-synchronized原理(五)
synchronized其应用层的语义是可以把任何一个非null对象作为”锁”。
Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现的。但是监视器锁本质又是依赖于底层的操作系统的Mutex Lock来实现的。而操作系统实现线程之间的切换就需要从用户态转换到核心态,这个成本非常高,状态之间的转换需要相对比较长的...
java多线程-volatile(六)
java多线程-volatile(六)
在jvm的内存模型中也有讲到过,这里希望单独拿出来再讲一遍,加强理解
volatile变量规则
volatile赋予了变量可见——禁止编译器对成员变量进行优化,它修饰的成员变量在每次被线程访问时,都强迫从内存中重读该成员变量的值;而且,当成员变量发生变化时,强迫线程将变化值回写到共享内存,这样在任何时刻两个不同线程总是看到某一成员变量的同一...
java多线程-Lock(八)
java多线程-Lock(八)
多线程使用synchronized来保持线程之间同步互斥,jdk1.5中加入了Lock对象也能实现同步效果
ReentrantLock(rɪ’entrənt)类的使用
ReentrantReadWriteLock类的使用
ReentrantLock
java.util.concurrent.lock 中的 Lock 框架是锁定的一个抽象...
java多线程-下载文件及断点续传(番外篇)
java多线程-下载文件及断点续传(番外篇)
最主要的还是了解到了,网络资源可以分段下载:
conn.setRequestProperty(“Range”,”bytes=”+startIndex+”-“+endIndex);//设置请求资源大小
int code=conn.getResponseCode();
if(code==206){//从服务器请求全部资源200,请求部分资源为206...
前端面试题总结之HTML与CSS (三)
请用Css 写一个简单的幻灯片效果页面
/**css**/
.ani{
width:480px;
height:320px;
margin:50px auto;
overflow: hidden;
box-shadow:0 0 5px rgba(0,0,0,1);
background-size: cover;
background-position: center;
-webkit-ani...
前端面试题总结之HTML与CSS (四)
请用CSS 实现:一个矩形内容,有投影,有圆角,hover 状态慢慢变透明。
html5\CSS3 有哪些新特性、移除了那些元素?如何处理HTML5 新标签的浏览器兼容问题?如何区分HTML 和HTML5?
HTML5 现在已经不是SGML 的子集,主要是关于图像,位置,存储,地理定位等功能的增加。
* 绘画canvas 元素
用于媒介回放的video 和audio 元素
本地离线存...
javascript面试题总结(二)
Javascript 如何实现继承?
原型链继承,借用构造函数继承,组合继承,寄生式继承,寄生组合继承
Javascript 创建对象的几种方式?
工厂方式,构造函数方式,原型模式,混合构造函数原型模式,动态原型方式
把Script 标签放在页面的最底部的body 封闭之前和封闭之后有什么区
别?浏览器会如何解析它们?
简述创建函数的几种方式
第一种(函数声明):
function...
javascript面试题总结(三)
看图说话
function f1(){
var tmp = 1;
this.x = 3;
console.log(tmp); //A
console.log(this.x); //B
}
var obj = new f1(); //1
console.log(obj.x) //2
console.log(f1()); //3
分析:
这道题让我重新认识了对象和函数,首先看代码(1),这...
javascript面试题总结(四)
看下列代码,输出什么?解释原因。
var undefined;
undefined == null; // true
1 == true; // true
2 == true; // false
0 == false; // true
0 == ''; // true
NaN == NaN; // false
[] == false; // true
[] == ![]; // true
...
牛客网js练习的题目记录
根据下图,编写HTML结构。要求:符合xHTML 1.0规范。
我的答案如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<st
牛客网js练习的题目记录(二)
flash中的事件处理分哪几个过程? Event对象的target和currentTarget有什么区别?
js中的event对象包含很多有用的信息
target:触发事件的元素。
currentTarget:事件绑定的元素。
用JavaScript脚本为Array对象添加一个去除重复项的方法
Array.prototype.unique=function () {
if...
前端面试题总结之HTML与CSS (五)
为什么利用多个域名来存储网站资源会更有效?
CDN 缓存更方便
突破浏览器并发限制
节约cookie 带宽
节约主域名的连接数,优化页面响应速度
防止不必要的安全问题
你如何对网站的文件和资源进行优化?
文件合并
文件最小化/文件压缩
使用CDN 托管
缓存的使用
本地存储(Local Storage )和cookies(储存在用户本地终端上的数据)之间的区别是什么?
Co...
今日推荐
周排行