zoukankan      html  css  js  c++  java
  • 用一下泛型缓存——提升程序性能

    前言

      最近看到一些文章,都说程序不能光完成功能,还是要精益求精的;先来一把利刃——泛型缓存;

    概念

      找度娘看了看,觉得有一个概括的不错,如下:

        泛型缓存是JIT产生全新的类,内存直接分配,由CPU查找内存地址;

      我的理解,泛型缓存是利用泛型和静态变量特征,在运行时根据不同的类型生成不同的类,由于数据是静态的,每个类的数据在内存中是共享,不用频繁创建,使用的时候直接获取就行;(这样是不是容易理解);

      下面就直接举例吧!!!

    开始整

      不用泛型缓存时

      1、先建一个控制台项目;

      2、依次创建Person、Student、Worker类;

       3、写一个工具类,拼字符串

       4、使用方法

       5、运行调用,每次拼接字符串都会调用工具类中的拼接方法,每次都会创建不同的字符串;

       

      使用泛型缓存

      1. 在原有项目基础上增加一个泛型缓存工具类SayHelloBuilerEx

       2. 在调用的时候改成最新工具类;

     

       3. 调试使用

      静态构造函数在第一次使用时调用;

       后续调用就直接调用方法,获取内存中的数据;

       最后运行效果:

    总结:

      表达能力不够啊,可能大家看文档不一定能理解,可以根据以上步骤进行调试一把就能明白,动动手!!!!!这个例子可能不太合适,可以根据这个思路可以自己尝试一下;

      本质:利用泛型类根据传入类型生成不同新类型的特征,再加上静态变量的生命周期,两者合一,从而达到泛型缓存的目的;

      应用场景:通常一般会在公共数据与类型相关的情况可以尝试使用;

     

  • 相关阅读:
    str.format格式化用法(通过{}来替代%)
    urlparse模块(专门用来解析URL格式)
    Socket原理与编程基础
    如何查询端口号和网址的ip地址?
    urlretrieve 如何给文件下载设置下载进度?
    判断URL是否支持断点续传?
    断点续传
    HTTP协议详解之User Agent篇
    HTTP协议详解之基本认证篇
    HTTP协议详解之请求篇
  • 原文地址:https://www.cnblogs.com/zoe-zyq/p/12603831.html
Copyright © 2011-2022 走看看