/*
同步的前题:
1.必须要有两个或以上线程
2.必须是多个线程使用一个锁 优点:解决多线程安全问题
弊端:多个线程判断锁,消耗资源 */
package pack;
public class Main { public static void main(String[] args) {
// TODO Auto-generated method stub...
分类:
编程语言 时间:
2015-07-05 09:43:08
阅读次数:
112
条件变量
如果说线程间的互斥锁是用来同步共享数据的访问的话,那么条件变量是用于线程之间共享数据的值。条件变量提供了一种线程之间的通知机制,当某个共享数据达到某个值时,唤醒等待这个共享数据的线程。条件变量相关函数主要 有5个:
#include
int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_...
分类:
编程语言 时间:
2015-07-05 09:42:49
阅读次数:
257
互斥锁
多线程编程中,(多线程编程)可以用互斥锁(也称互斥量)可以用来保护关键代码段,以确保其独占式的访问,这有点像二进制信号量。POSIX互斥锁相关函数主要有以下5个:
#include
int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *mutexattr);
int pthr...
分类:
编程语言 时间:
2015-07-05 09:41:42
阅读次数:
239
本文简要介绍了Java多线程中的Executor框架,包括Runnable、Callable、Future、RunnableFuture、FutureTask、Executor、ExecutorService以及这些接口与类之间的关系。...
分类:
编程语言 时间:
2015-07-05 09:34:54
阅读次数:
184
当写一个任务较多的爬虫时需要用到线程,如果说我有一群虫子,我把它分成4队,每一队虫子都有自己的任务,互相执行自己的任务而不干扰。线程分为串行线程和并行线程,串行线程是线程1执行完执行线程2,并行线程是线程3和线程4同时进行,加快任务完成速度。 目标网站:http://jandan.net/,爬取网站...
分类:
编程语言 时间:
2015-07-05 07:08:16
阅读次数:
175
多线程的基本概念Q: 请解释操作系统层面上的线程和进程进程代表了一个正在运行的应用程序的实体,而一个进程中可包含1个或多个线程。Q: 多线程程序在操作系统里是并行执行的吗在单CPU的计算机架构上,任何时候只可能存在一个运行的线程,操作系统通过快速的调度轮换使使用者感觉到多线程在同时执行。而在多CPU...
分类:
编程语言 时间:
2015-07-05 02:05:18
阅读次数:
198
Linux多线程的线程栈都会维护自己的一个函数栈,以及指令集 例如N 个线程调用prt函数,prt函数内部有局部变量,虽然N个线程的执行顺序是随机的,但是每个线程调用的prt函数的局部变量都是每个线程的线程栈内部维护。每个线程都的有自己的函数栈,而且每个线程执行都是独立的。#includ...
分类:
编程语言 时间:
2015-07-05 00:47:07
阅读次数:
318
1、线程概念 进程(process)是一块包含某些资源的内存区域,操作系统利用进程把它的工作划分为功能单元。而线程是进程的一个实体,是CPU调度和分派的基本单元,是比进程更小的能独立运行的基本单元。线程自己并不拥有系统资源,只是拥有在运行中必不可少的极少资源(如程序计算器,一组寄存器和栈等),但是....
分类:
编程语言 时间:
2015-07-04 18:25:23
阅读次数:
171