ICode9

精准搜索请尝试: 精确搜索
  • java什么时候声明static方法2022-02-09 17:35:49

    1.经常用到的方法,可以声明为static,这样省去了每次new对象的内存空间,因为非static方法,需要new对象才能调用此方法。但因此也产生多线程访问线程安全问题 比如: import com.google.common.util.concurrent.ThreadFactoryBuilder; import lombok.extern.slf4j.Slf4j; import java.ut

  • springboot阻塞式异步并发使用2022-01-20 01:34:27

    1.异步线程池配置 @Configuration @Slf4j public class TaskPoolConfig { @Bean("asyncTaskExcutor") public Executor asyncTaskExcutor(){ ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); //核心线程池大小 executor.setCor

  • Java多线程中读写不一致问题2021-11-28 19:04:04

    问题: 假设有个全局变量var初始化为0 MyThread线程循环+1 MyThread2线程检测到var大于10时退出循环 问题来了,我们发现MyThread一直没有退出循环 也就是说线程没有及时刷新内存 解决方法:给全局变量添加 volatile关键字 Java提供了volatile来保证可见性。当一个变量被volatile修饰后

  • 多线程糗事百科案例,直接可用,注释明确2021-11-28 09:06:11

    port threading#线程模块 import queue#用来队列 import requests#便捷性优于urllib模块 import time from lxml import etree#数据清洗 #1采集网页线程 class Thread1(threading.Thread): def __init__(self,threadName,pageQueue,dataQueue):#初始化 threading.Thread.__i

  • JAVA线程池ThreadPoolExecutor类使用详解2021-08-03 11:33:16

    在《阿里巴巴java开发手册》中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。而线程池不允许使用Executors去创建,而要通过ThreadPoolExec

  • Java 多线程编程2021-07-16 12:05:35

        ava 给多线程编程提供了内置的支持。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分

  • SpringBoot Schedule 调整默认调度线程数2021-06-26 23:31:29

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/14933829.html   Project Directory   Maven Dependency <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&quo

  • 【UE4 C++ 基础知识】<13> 多线程——TaskGraph2021-04-30 23:34:50

    概述 TaskGraph 系统是UE4一套抽象的异步任务处理系统 TaskGraph 可以看作一种”基于任务的并行编程“设计思想下的实现 通过TaskGraph ,可以创建任意多线程任务, 异步任务, 序列任务, 并行任务等,并可以指定任务顺序, 设置任务间的依赖, 最终形成一个任务图, 该系统按照设定好的依赖关系

  • Java线程池ThreadPoolExecutor类2021-03-11 11:32:06

    线程资源应该通过线程池提供,而不可在应用中自行显示的创建线程。这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。而线程池不允许使用Executors去创建,而要通过ThreadPoolExecutor方式,这一方面是由于jdk中Executo

  • 线程与进程理论知识入门04-等待唤醒机制(wait与notify)与ThreadLocal2021-01-26 13:34:10

    锁.wait() 与 锁.notify() wait 或者 notify 必须要有锁包裹着 等待区域: wait(); 获取对象的锁

  • Java核心技术之ThreadLocal2021-01-24 18:58:34

    Java核心技术之ThreadLocal 概述 ThreadLocal 提供一种访问某个变量的特殊方式: 访问到的变量属于当前线程,它保证每个线程的变量相互隔离,而同一个线程在任何时候、任何地点都能获取属于本线程的变量。如果要使用 ThreadLocal,通常定义为 private statis 类型。ThreadLocal 适

  • java线程池ThreadPoolExecutor类使用详解2021-01-17 10:36:30

    在《阿里巴巴java开发手册》中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。而线程池不允许使用Executors去创建,而要通过ThreadPoolExecut

  • java 多线程 数据通信2021-01-09 13:05:13

    1.司机等乘客全部上车后再启动车子 import java.util.concurrent.CountDownLatch;public class A { public static void main(String[] args) { CountDownLatch countDownLatch = new CountDownLatch(3);//线程安全 内部是aqs //倒计数器 for (int i = 97

  • 十、Atomic和ABA问题2021-01-07 20:58:24

    1、原子类AtomicInteger的API讲解 package day05.part1; import java.util.concurrent.atomic.AtomicInteger; /** * 原子类AtomicInteger的API讲解 * @author xzq */ public class AtomicTest01 { public static void main(String[] args) { /*

  • 六、LockSupport2021-01-05 20:33:22

    1、为什么使用LockSupport类 如果只是LockSupport在使用起来比Object的wait/notify简单, 那还真没必要专门讲解下LockSupport。最主要的是灵活性。 ①LockSupport不需要在同步代码块里 。所以线程间也不需要维护一个共享的同步对象了,实现了线程间的解耦。 ②unpark函数可以先

  • Java_多线程2020-06-09 19:02:05

    Java 多线程编程 Java 给多线程编程提供了内置的支持。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 这里定义和线程相关的另一个术语 - 进程:一个进程包括由

  • JAVA并发编程-9-并发安全2020-05-21 15:01:22

    线程并发安全的理解一、类的线程安全的定义二、怎么才能做到类的线程安全1、栈封闭2、无状态3、让类不可变4、volatile5、加锁和CAS6、安全的发布7、TheadLocal三、线程不安全会产生的问题1、死锁2、活锁3、线程饥饿四、性能和思考影响性能的因素减少锁的竞争 上一篇看这里:J

  • java线程池ThreadPoolExecutor类使用详解2020-02-26 18:58:51

      在《阿里巴巴java开发手册》中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。而线程池不允许使用Executors去创建,而要通过ThreadPoolExe

  • 多线程爬虫2019-12-07 16:50:35

    import json from queue import Queue from threading import Thread,Lock import requests import time from aip import AipNlp from pymysql import connect from multiprocessing import Pool import pymongo lock = Lock() conn = connect(host="localhost", p

  • springboot异步线程2019-11-14 14:58:06

    前言 最近项目中出现了一个问题,发现自己的定时器任务在线上没有执行,但是在线下测试时却能执行,最后谷歌到了这篇文章SpringBoot踩坑日记-定时任务不定时了?; 本篇文章主要以自己在项目中遇到的问题为背景,并不涉及源码; Scheduled 定时任务 Scheduled注解的具体使用方法自行百度或谷歌

  • Java多线程编程2019-10-15 19:01:05

    一、简介 Java 给多线程编程提供了内置的支持。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系

  • Java多线程(十一):线程组2019-08-30 12:54:23

    线程组 线程组可以批量管理线程和线程组对象。 一级关联 例子如下,建立一级关联。 public class MyThread43 implements Runnable{ public void run() { try { while (!Thread.currentThread().isInterrupted()) {

  • Semaphore in Java2019-07-27 17:56:37

    Semaphore  与操作系统概念中的 信号量和PV操作 类似 控制最大的并发线程数    *countdownLatch也可以实现类似功能   Example // java program to demonstrate // use of semaphores Locks import java.util.concurrent.*; //A shared resource/class. class Shared { st

  • 使用Zookeeper实现分布式锁2019-07-19 10:03:58

    利用Zookeeper临时节点(客户端异常断开连接后临时节点自动移除)或者Redis SETNX(set if not exists)(设置ttl)可以实现分布式锁,这里先利用zk实现一个 1.启动zk   2.代码中watch节点    2.1 Maven引入zk & zk client      2.2 代码和注释 import org.I0Itec.zkclient.ZkCl

  • Spring中使用@scheduled定时执行任务需要注意的坑2019-04-28 10:55:12

    Spring使用@scheduled定时执行任务的时候是在一个单线程中,如果有多个任务,其中一个任务执行时间过长,则有可能会导致其他后续任务被阻塞直到前任务执行完成。也就是会造成一些任务无法定时执行的错觉。 解决方案: 通过自定义线程池,并对提交的线程任务做判断,如果上次提交的线程任务

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有