#cu

ShellExecute, WinExec, CreateProcess区别

ShellExecute  ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。  有几个API函数都可以实现这些功能,但是在大多数情况下ShellExecute是更多的被使用的,同时它并不是太复杂。  ShellExecute函数原...

如何使用SecureCRT连接ubuntu

1.首先要明白什么是ssh?可以把ssh看做是telnet的加强版,telnet的密码和信息都是不加密的,而ssh则加密。.2.开启ubuntu上的ssh功能先安装,安装后就自动开启了.sudoapt-getinstallopenssh-serveropenssh-client.3.安装secureCRT.4.查看ub...

深入理解java:2.3.6. 并发编程concurrent包 之管理类---线程池

  我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:  如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。  那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被...

深入理解java:2.3.5. 并发编程concurrent包 之容器BlockingQueue(阻塞队列)

阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作是:在队列为空时,获取元素的线程会等待队列变为非空。当队列满时,存储元素的线程会等待队列可用。 阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。阻塞队列就是生产者存放元素的容器...

深入理解java:2.3.4. 并发编程concurrent包 之容器ConcurrentLinkedQueue(非阻塞的并发队列---循环CAS)

在并发编程中我们有时候需要使用线程安全的队列。如果我们要实现一个线程安全的队列有两种实现方式:一种是使用阻塞算法,另一种是使用非阻塞算法。使用阻塞算法的队列可以用一个锁(入队和出队用同一把锁)或两个锁(入队和出队用不同的锁)等方式来实现,而非阻塞的实现方式则可以使用循环CAS的方式来实现,本文让我们一起来研究下如何使用...

深入理解java:2.3.2. 并发编程concurrent包 之重入锁/读写锁/条件锁

重入锁Java中的重入锁(即ReentrantLock)  与JVM内置锁(即synchronized)一样,是一种排它锁。ReentrantLock提供了多样化的同步,比如有时间限制的同步(定时锁),可以被Interrupt的同步,即中断锁(synchronized的同步是不能Interrupt的...

深入理解java:2.3.1. 并发编程concurrent包 之Atomic原子操作(循环CAS)

java中,可能有一些场景,操作非常简单,但是容易存在并发问题,比如i++,此时,如果依赖锁机制,可能带来性能损耗等问题,于是,如何更加简单的实现原子性操作,就成为java中需要面对的一个问题。 在backport-util-concurrent没有被引入java1.5并成为JUC之前,这些原子类和原子操作方...

深入理解java:2.3. 并发编程 java.util.concurrent包

JUCjava.util.concurrent包,这个包是从JDK1.5开始引入的,在此之前,这个包独立存在着,它是由DougLea开发的,名字叫backport-util-concurrent,在1.5开始引入java,命名路径为java.util.concurrent,其中的基本实现方式,也有所改变。(来源于一位大...

《图解Java多线程设计模式》之二:Single Thread Execution 模式

一,什么是SingleThreadExecution模式?同一时间内只能让一个线程执行处理二,例子1.不安全的情况用程序模拟三个人频繁地通过一个只允许一个人经过的门。当人通过时,统计人数便会增加,并记录通行者的姓名和地址门:publicclassGate{privateintcounter=0;privateStrin...

解决编译apache出现的问题:configure: error: APR not found . Please read the documentation

系统环境:[root@Web-Lamp~]#cat/etc/redhat-releaseCentOSrelease6.6(Final)[root@Web-Lamp~]#uname-r2.6.32-504.el6.x86_64Apache安装版本:[root@Web-Lamptools]#ll-rw-r--r--1roo...

ThreadPoolExecutor线程池进阶使用

一、简介 线程池类为java.util.concurrent.ThreadPoolExecutor,常用构造方法为: ThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize, longkeepAliveTime,TimeUnitunit,...

线程池ExecutorService和完成服务CompletionService的使用获取线程的返回结果

packagecom.suning.ecif.admin.app.impl.temp;importjava.util.ArrayList;importjava.util.Collection;importjava.util.concurrent.Callable;importjava.util.concurrent.C...

《CURL技术知识教程》系列分享专栏

《CURL技术知识教程》已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/201737.htmlPHP采集相关教程之一CURL函数库php中通过curl模拟登陆discuz论坛的实现代码php中通过curlsmtp发送邮件PHPcurl并发最佳实践代码分享CURL的...

ConcurrentHashMap底层实现原理(JDK1.8)源码分析

  ConcurrentHashMap相比HashMap而言,是多线程安全的,其底层数据与HashMap的数据结构相同,数据结构如下:    说明:ConcurrentHashMap的数据结构(数组+链表+红黑树),桶中的结构可能是链表,也可能是红黑树,红黑树是为了提高查找效率。  1、类的继承关系 publiccla...

HashMap、Hashtable、ConcurrentHashMap的原理与区别(简述)

HashTable底层数组+链表实现,无论key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低,ConcurrentHashMap做了相关优化初始size为11,扩容:newsize=olesize*2+1计算index的方法:index=(hash&...
首页上一页...6263646566...下一页尾页