首页 > 其他分享 >虚引用

虚引用

时间:2024-12-26 12:10:43浏览次数:2  
标签:java Thread queue 引用 import new poll

package com.wb.demo.util;

import java.lang.ref.PhantomReference;
import java.lang.ref.Reference;
import java.lang.ref.ReferenceQueue;
import java.util.LinkedList;
import java.util.List;

public class PhantoReference {
//容器 final static List<Object> list = new LinkedList<>();
// final static ReferenceQueue<TTT> queue = new ReferenceQueue<>(); public static void main(String[] args) { PhantomReference<TTT> phantomReference = new PhantomReference(new TTT(), queue); new Thread(() -> { while (true) {
//一直添加数据 list.add(new Byte[1024 * 1024]); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); Thread.currentThread().interrupt(); } System.out.println(phantomReference.get()); } }).start(); new Thread(() -> { while (true) {
//被回收时,放入queue Reference poll = queue.poll(); if (poll != null) { System.out.println("--------- 虚引用对象被jvm回收了 --------------" + poll); } } }).start(); try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } } }

  

标签:java,Thread,queue,引用,import,new,poll
From: https://www.cnblogs.com/wangbiaohistory/p/18632451

相关文章

  • 虚引用
    当被应用的强引用失去后,强引用关联的这个引用也就是虚引用相关的分配就会被回收以ThreadLocal<T>为例1.进行塞值publicvoidset(Tvalue){Threadt=Thread.currentThread();ThreadLocalMapmap=getMap(t);if(map!=null){......
  • 软引用
    定义软引用(SoftReference)是Java中引用类型的一种。它是一种相对较弱的引用,在Java的垃圾回收机制(GarbageCollection,GC)中具有特殊的处理方式。用途软引用主要用于缓存场景,当内存空间足够时,垃圾回收器不会回收软引用所指向的对象;只有当内存不足时,才会回收这些对象,以释放内......
  • 强引用
    //每一次创建一个对象都是强引用()也就是普通的引用Objectobject=newObject();publicclassTTT{//实际情况不需要重写,也不必要重写,java有垃圾回收器帮助回收C,C++需要回收。@Overrideprotectedvoidfinalize()throwsThrowa......
  • Java中的五种引用方式底层详解
        在GC算法的可达性算法中描述的对象引用,一般指的是强引用,即是GCRoot对象对普通对象有引用关系,只要这层关系存在,普通对象就不会被回收,而在Java中一共有五种引用关系。目录 强引用 (Strong Reference)软引用 (SoftReference)使用软引用实现简单缓存 一个实......
  • uniapp中组件的引用、组件之间数据的传递
    一、组件的引用1.首先有一个写好的组件cli-header.vue 目录为/pages/client/client-components/cli-header.vue2.在需要调用的页面编写代码<template><cliHeader/></template><script>importcliHeaderfrom'@/pages/client/client-components/cli-header.vu......
  • 11. Java的四种引用,强弱软虚
    强引用强引用是平常中使用最多的引用,强引用在程序内存不足(OOM)的时候也不会被回收,使用方式:Stringstr=newString("str");软引用软引用在程序内存不足时,会被回收,使用方式:点击查看代码//注意:wrf这个引用也是强引用,它是指向SoftReference这个对象的,//这里的软引用指的......
  • wps添加引用和参考文献的方法
    文章目录1.找到目标参考文献先复制再文档内部2.引用文献具体操作2.1.找到你要引用的位置(如下图)2.2点击引用--插入尾注2.3.复制1中的目标文献到此处2.4选中序号调整大小3.验证可行性1.找到目标参考文献先复制再文档内部前面的需要可以不需要2.引用文献具体操作2......
  • 若引用JS文件,或者CSS文件,应直接写入HTML文件
    <scriptsrc="https://cdn.bootcdn.net/ajax/libs/quill/2.0.2/quill.js"></script><linkhref="https://cdn.bootcdn.net/ajax/libs/quill/2.0.2/quill.snow.css"rel="stylesheet"><script>/*!Forlicense......
  • 论文引用 | 如何将正文引用批量设置上标?
    本方法适用对象:请注意,本方法针对下图所示论文引用格式:①外部:半角中括号②内部:数字,数字与半角逗号的组合,数字与连接符号的组合,数字、半角逗号与连接符号的组合主要步骤:1.打开高级查找2.在查找内容中输入\[[0-9,-]{1,}\],并勾选搜索选项中的“使用通配符”3.......
  • 引用 | 如何将正文引用批量设置上标?
    本方法适用对象:请注意,本方法针对下图所示论文引用格式:①外部:半角中括号②内部:数字,数字与半角逗号的组合,数字与连接符号的组合,数字、半角逗号与连接符号的组合主要步骤:1.打开高级查找2.在查找内容中输入\[[0-9,-]{1,}\],并勾选搜索选项中的“使用通配符”3.点击在以下......