Java8-Lock-No.04】的更多相关文章

命令行快捷键 https://blog.csdn.net/wanlhr/article/details/80926804 Ubuntu18.04使用vi命令修改文件并保存 vi /opt/teamviewer/config/global.conf i 修改... 键盘左上角“Esc”键 :wq Ubuntu18.04图形化界面下操作上锁的文件:(原因是缺少权限) 直接Ctrl+Alt+T打开终端执行命令:sudo nautilus Ubuntu18.04删除文件 sudo rm -rf 文件夹名…
操作系统环境准备: 准备几台服务器(我这里是三台虚拟机): linux ubuntu 14.04 server x64(下载地址:http://releases.ubuntu.com/14.04.2/ubuntu-14.04.2-server-amd64.iso) master:192.168.1.200 node1:192.168.1.201 node2:192.168.1.202 备注:我在安装ubuntu虚拟机时,我把账号名和密码都设置为:hadoop,所有虚拟机的账户名密码一致. 为每台…
转载:http://www.jellythink.com/archives/101 什么是RAII? RAII是Resource Acquisition Is Initialization的简称,是C++语言的一种管理资源.避免泄漏的惯用法.利用的就是C++构造的对象最终会被销毁的原则.RAII的做法是使用一个对象,在其构造时获取对应的资源,在对象生命期内控制对资源的访问,使之始终保持有效,最后在对象析构的时候,释放构造时获取的资源. RAII的本质内容是用对象代表资源,把管理资源的任务转化为管…
本文章节: 1.JMM简介 2.堆和栈 3.本机内存 4.防止内存泄漏 1.JMM简介 i.内存模型概述 Java平台自动集成了线程以及多处理器技术,这种集成程度比Java以前诞生的计算机语言要厉害很多,该语言针对多种异构平台的平台独立性而使用的多线程技术支持也是具有开拓性的一面,有时候在开发Java同步和线程安全要求很严格的程序时,往往容易混淆的一个概念就是内存模型.究竟什么是内存模型?内存模型描述了程序中各个变量(实例域.静态域和数组元素)之间的关系,以及在实际计算机系统中将变量存储到内存和…
入手了emacs,一直折腾想把caps Lock设置为control键. 网上看到一个用gnome里找到系统-首选项之类可以直接设置的.在14.04版的ub中是找不到的(新版设置太坑,只有那么几个选项). 只能先装上gnome tweat tool sudo apt-get install gnome-tweak-tool 然后开始菜单中开启(原谅我称呼它为开始菜单,实在不知道叫什么),或在终端输入: gnome-tweak-tool gnome-tweak-tool在UB中好像显示有点问题,不…
在Ubuntu16.04下安装软件,例如:sudo apt-get install lrzsz时提示: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它? 这是因为apt-get进程可能没有结束,需要强制杀掉该进程: 解决办法: 1.终端输入 ps  aux ,列出进程.找到含有apt-get的进程,直接sudo kill PID.2.强制解锁,终端输入下面两条命令: sudo r…
本文章使用环境: Ubuntu16.04 Java8 Mysql5.7 Tomcat8.5 Ubuntu 版本16.04, 本文采用SSH远程登录主机 工具:Xshell 默认使用root用户登录 (su root) Java 官网下载压缩包 通过Xshell将压缩包文件传输到自己指定的目录, 我的资源路径[/mnt/install] 解压安装&配置: 解压到指定路径并且重命名 root@vxzones:/mnt/install# tar zxvf [文件名].tar.gz -C /usr/lo…
[本文结构] [1]安装Hadoop前的准备工作 [1.1] 创建新用户 [1.2] 更新APT [1.3] 安装SSH [1.4] 安装Java环境 [2]安装和配置hadoop [2.1] Hadoop下载 [2.2] Hadoop伪分布式配置 [踩过的坑] [1] 需要在Java8上安装Hadoop,开始用Java11一直失败: [2] 一定要再熟悉大致流程后再安装,专注于一篇笔记的同时参考其他笔记. [3] 本文参考笔记 [1.1] Ubuntu16.04 下 Hadoop的安装与配置(…
img { border: solid 1px } 一.前言 多线程怎么防止竞争资源,即防止对同一资源进行并发操作,那就是使用加锁机制.这是Java并发编程中必须要理解的一个知识点.其实使用起来还是比较简单,但是一定要理解. 有几个概念一定要牢记: 加锁必须要有锁 执行完后必须要释放锁 同一时间.同一个锁,只能有一个线程执行 二.synchronized synchronized的特点是自动释放锁,作用在方法时自动获取锁,任意对象都可做为锁,它是最常用的加锁机制,锁定几行代码,如下: //---…
       系列1 曾经说过:每个线程都有自己的资源,但代码区是共享的,即每个线程都可以执行相同的函数.        这可能带来的问题就是多个线程同时执行一个函数,并修改同一变量值,这将导致数据的混乱,产生不可预料的结果.看下面的示例: private void btnThread_Click(object sender, EventArgs e) { Thread t1 = new Thread(ChangeTextBox); t1.Start(); Thread t2 = new Thr…
我的博客 ubuntu常见错误--Could not get lock /var/lib/dpkg/lock解决 通过终端安装程序sudo apt-get install xxx时出错: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) E: Unable to lock the administration directory (/var/lib/dpkg/), is a…
安装vim: sudo apt-get install vim-gtk 问题: E:无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) E:无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它? 解决: 直接杀死占用进程. sudo rm /var/cache/apt/archives/lock sudo rm /var/lib/dpkg/lock…
一.环境如下 Ubuntu16.04  +tomcat9+openjdk1.8 二.问题 在tomcat的bin下执行./startup.sh 如下图没有问题 root@bogon:/usr/apache-tomcat-9.0.8/bin# ./startup.sh./catalina.sh: 110: ./catalina.sh: -Djava.security.egd=file:/dev/./urandom: not foundUsing CATALINA_BASE:   /usr/apac…
出现问题: 最近打开系统之后没声儿,抽空解决以下,谁知道安装的时候出现了这个问题,一看就是锁被占了呗 直接重启大法.....不行,看来是锁分配出问题了,找了个解锁命令 jiang@ryzen:~$ sudo rm /var/cache/apt/archives/lock jiang@ryzen:~$ sudo rm /var/lib/dpkg/lock 不行,没用.... 思考一下:这些被占用的目录都是关于包安装的,简单的说,包安装的第一步应该就是拿到目录然后下载一些包的信息,然后下载. 直接检…
问题 在Ubuntu中,有时候运用sudo  apt-get install 安装软件时,会出现如下的情况: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it? 三种解决方案 这是由于apt…
有了简单爬虫,但是效率实在是太慢,于是决定启用线程进行爬取数据 但是对于临界资源的定义不好把握,思路如下: 1.定义队列(Queue的数据结构,List也可,安全性待考究) demo:https://blog.csdn.net/the_fool_/article/details/80843644 2.对页码数++的部分进行加锁 在此之前,要讲一下继承,网上看了一个博主写的两个demo清晰明了,列在下面: 以下代码为博主转载,个人记录做笔记用,尊重原博主原创,侵删: 原博主: Citizen_Wa…
特殊语句 yield语句 yield用于终止迭代 只能使用在返回类型必须为 IEnumerable.IEnumerable<T>.IEnumerator 或 IEnumerator<T>的方法.运算符.get访问器中 using System; namespace statement { class Program { static System.Collections.Generic.IEnumerable<int> Range(int from, int to) /…
[How to build:]cd /home/ops/work/demo/docker/aws/srctouch Dockerfiledocker build -t aws_src_image:v1.0 . [Test:]docker run -p 10023:22 -d aws_src_image:v1.0 /usr/sbin/sshd -Dssh -p 10023 127.0.0.1 [Dockerfile:]FROM ubuntu_base:v1.0MAINTAINER jbding <…
step1: 添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update step2: 安装oracle-java-installer sudo apt-get install oracle-java8-installer step3: 设置系统默认jdk sudo update-java-alternatives -s java-8-oracle step4: java安装测试 java -version jav…
添加ppa apt-get update apt install software-properties-common add-apt-repository ppa:webupd8team/java apt-get update 安装oracle-java-installer apt-get install oracle-java8-installer 设置系统默认jdk update-java-alternatives -s java-8-oracle java安装测试 java -versi…
在~/.xprofile中加入 setxkbmap -option caps:ctrl_modifier 要弄成全局的就在 /etc/X11/Xsession.d/ 里面找个文件塞进去. archlinux下面好像是在 /etc/X11/xorg.conf.d/ 搞个配置文件塞进去 改个键真难,辣鸡linux,太几把复杂了.…
###下载tar.gz 点击选择接收协议 下载完文件之后,将文件从Windows复制到ubuntu上,可以用xShell,putty,git.这里用git 下载安装git之后,再任意位置右击,选择 git bash here 接下来找到下载的文件 jdk-8u221-linux-x64.tar.gz 使用scp 命令 进行文件复制 $ scp jdk-8u221-linux-x64.tar.gz ubuntu@49.235.89.98:/home/ubuntu 复制成功 xshell 登录 解压…
从Oracle官网下载jdk,jdk-8u231-linux-x64.tar.gz (1)复制到/opt 目录内 sudo cp jdk-8u231-linux-x64.tar.gz /opt (3)/opt目录下创建java目录,改权限为当前用户所有 sudo mkdir java sudo chown likoo java sudo chgrp likoo java (4)将安装包解压至java目录 tar -zxvf jdk-8u231-linux-x64.tar.gz -C /opt/j…
本文首发在infoQ :www.infoq.com/cn/articles/jdk1.8-abstractqueuedsynchronizer 前言: Java中的FutureTask作为可异步执行任务并可获取执行结果而被大家所熟知,通常可以使用future.get()来获取线程的执行结 果,在线程执行结束之前,get方法会一直阻塞状态,直到call()返回,其优点是使用线程异步执行任务的情况下还可以获取到线程的执行结果,但是 FutureTask的以上功能却是依靠通过一个叫AbstractQu…
本文原创,转载请注明出处. 参考文章: <"JUC锁"03之 公平锁(一)> <"JUC锁"03之 公平锁(二)> 锁分独占锁与共享锁,公平锁与非公平锁,悲观锁与乐观锁,可重入锁与不可重入锁,相关概念可查看其它文章. Lock操作:加锁(lock),解锁(unlock),创建条件对象(newCondition). Condition操作:等待(await),通知(signal). ReentrantLock:是一个可重入锁,独占锁,由构造参数…
1. 前言 近日有感许多新朋友想尝试使用Jexus,不过绝大多数都困惑徘徊在Linux如何安装啊,如何编译Mono啊,如何配置Jexus啊...等等基础问题,于是昨日向宇内流云兄提议,不如搞几个配置好的虚拟机镜像让新朋友先尝尝Jexus,感受Jexus的性能再慢慢学配置,何不更好?今日小弟决定坐言起行,先弄一个镜像共享出来,抛砖引玉,希望日后有同好共享更多平台的镜像出来,让更多朋友更容易一睹Jexus之美 \(^o^)/~ 2. 配置虚拟机(熟悉Ubuntu Server的大大请略过 1 & 2…
在Ubuntu 14.04 上安装单机版ELK 2.*(脚本化) 1.判断是否为root权限 if [ "${UID}" -ne 0 ]; then echo "You must be root to run this program." >&2 exit 3 fi 2.记录脚本运行日志(可以在ubuntu日志中找到对应的运行信息) log() { echo "$1" logger "$1" } 3.设置脚本运行…
环境: Ubuntu12.04 问题描述: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable) 出现场景: 使用命令:sudo apt-get update 原因解析: 在上一次下载资源时,由于网络问题,下载失败.当换一个较好一点网络环境之后,下载失败报错. 原因在于,上一次不正常的关闭下载,导致资源被锁不可用,删除异常的资源,重新下载即可. 解决方案: 运行以下命令,删…
原本从Adobe 官方网站下载了 Adobe Reader, 是个rpm包,先用agt-get 装了rpm(sudo apt-get install rpm), 一安装(rpm -ivh AdobeReader_chs-8.1.7-1.i486.rpm)出来一大堆依赖, 一查,有很多依赖的软件都还没安装(for d in 'rpm -qpR AdobeReader_chs-8.1.7-1.i486.rpm'; do whereis $d; done;) 然后google了一下,找到了一篇UK的帖…