Wesley13 Wesley13
4年前
java多线程(二)
一、摘要   当我们将线程创建并start时候,它不会一直占据着cpu执行,而是多个线程间会去执行着这个cpu,此时这些线程就会在多个状态之间进行着切换。  在线程的生命周期中,它会有5种状态,分别为:创建、准备、执行、阻塞、死亡二、线程生命周期状态详解  1、创建状态:其实就是newThread()创建了线程对象,这个时候JVM会为其分
CuterCorley CuterCorley
4年前
Python 爬取留言板留言(二):多线程版+selenium模拟
一、项目概述本项目主要是对领导留言板内的所有留言的具体内容进行抓取,对留言详情、回复详情和评价详情进行提取保存,并用于之后的数据分析和进一步处理,可以对政府的决策和电子政务的实施提供依据。具体项目说明和环境配置可参考本系列的第一篇。本篇在第一篇的基础上做了一些改进1.采用了多线程,设定同时运行的线程的数量为3,线程数量适中,这样在保证在同一时刻有多个线
Wesley13 Wesley13
4年前
Java运行状态分析2:获取线程状态及堆栈信息
Java运行状态分析2:线程状态及堆栈信息基本概念出现内存泄漏或者运行缓慢场景,有时候无法直接从业务日志看出问题时候,需要分析jvm内存和线程堆栈线程堆栈信息主要记录jvm线程在某时刻线程执行情况,分析线程状态可以跟踪到程序出问题的地方​内存堆栈信息主要记录jvm堆中在某时刻对象使用情况,
Wesley13 Wesley13
4年前
Java高级教程02
\TOC\1.Java线程1.1.多线程和多进程多进程:操作系统能够同时进行多个任务:每个app(word,播放器,浏览器)可以同时运行多线程:同一应用程序中哟多个顺序流同时执行线程是进程中的一部分1.2.线程的执行过程:!(
Stella981 Stella981
4年前
JVM
  最近又鼓捣jvm,然后结合着VisualVM监控、jvm的书,对jvm又有一些理解体会,今天主要聊聊jvm的线程模型,内存模型,以及跟开发比较相关的GC。  线程模型,jvm的线程就对应os的线程,据说linux的kernel3.x之后,也出现了OS内核线程支持,之前实现是轻量级进程,比如你线程搞多了,或者kernel内存留少了,unab
Wesley13 Wesley13
4年前
InnoDB 缓冲池大小调整
导读翻译者:魏新平译文校稿:叶师傅原文出处:《ChunkChange:InnoDBBufferPoolResizing》https://www.percona.com/blog/2018/06/19/chunkchangeinnodbbufferpoolresiz
Wesley13 Wesley13
4年前
Java BoneCP JDBC连接池
packagecom.hh.util;importjava.sql.Connection;importjava.sql.SQLException;importorg.apache.log4j.Logger;importcom.jolbox.bonecp.BoneCP;
待兔 待兔
1年前
Java内存的可见性
Java内存的可见性可见性:一个线程对共享变量的修改,能够及时被其它线程看到共享变量:如果一个变量在多个线程的工作内存中都存在副本,那么这个变量就是这几个线程的共享变量Java内存模型(JMM):描述了Java程序中各种线程共享变量的访问规则,以及在JVM
京东云开发者 京东云开发者
9个月前
探索虚拟线程:原理与实现
作者:京东物流孙强虚拟线程的引入与优势在Loom项目之前,Java虚拟机(JVM)中的线程是通过java.lang.Thread类型来实现的,这些线程被称为平台线程。然而,平台线程的创建和维护在资源使用上存在显著的开销。首先,创建成本不菲,因为每当操作系统
小白学大数据 小白学大数据
7个月前
Python爬虫多线程并发时的503错误处理最佳实践
一、503错误产生的原因在HTTP协议中,503错误表示服务器当前无法处理请求,通常是因为服务器暂时过载或维护。在多线程爬虫场景下,503错误可能由以下几种原因引起:1.服务器负载过高:当多个线程同时向服务器发送请求时,服务器可能因负载过高而拒绝部分请求,