自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Zebe

你今天的日积月累,终有一天会成为别人的望尘莫及。CDR插件技术网(原VBA探秘):cdrvba.com,个人主页:www.zebe.me,微信:zebe1989

  • 博客(7)
  • 资源 (6)
  • 问答 (2)
  • 收藏
  • 关注

原创 Java中哪些Map是线程安全的?

HashTable类里面的 get 和 put 方法都是用 synchronized 关键字来修饰的,同时只能有一个线程操作 get 或者 put,效率比较低,一般不建议使用这个集合,目前已经很少使用了。SynchronizedMap的实现方式是加了个对象锁,每次对Map的操作都要先获取对象锁才能进入,所以性能也不算好。ConcurrentHashMap 比较复杂,每个版本的实现方式也不一样,在jdk8之前用的是分段锁,分成16个桶,每次只加锁其中一个桶,在jdk8里面加入了红黑树和CAS算法。

2021-05-28 15:09:14 74

原创 Java线程和进程有什么不同?

进程就是操作系统中的一个正在执行的程序,它由操作系统来进行资源分配和调度,例如在Java中科院使用 jps 命令来查看当前服务器中的JVM进程,jps中的 p 含义为 process,就是进程的意思。线程属于进程的一个子集,在一个进程中,可能会有多个线程。

2021-05-28 12:47:49 4

原创 Java线程有几种状态?请分别讲述一下每种状态的含义。

共有6种状态,被定义在 Thread.State 这个枚举里面,分别是:NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED。

2021-05-27 08:02:25 35

原创 CDR插件开发之CPG插件013 - 在VS2019中安装MFC窗体界面组件

在前两篇文章中,实现了一个简单的CPG小插件(CDR小助手):点击工具栏按钮时,弹出该窗体对话框,在窗体对话框中单击“新建文档”按钮时,创建一个新的CDR文档;单击“一键转曲”按钮时,将当前选定的对象转换成曲线。在实际开发过程中,往往需要用到更加复杂的界面组件,本文将介绍MFC环境的安装。 什么是MFC MFC是英文Microsoft Foundation Classes 的简称,含义为微软基础类库。既然是类库,那么自然会包含许多的类,MFC将Windows应用程序接口封装起来,提供了一套包含界面.

2021-05-23 22:56:33 116 2

原创 CDR插件开发之CPG插件012 - 在CPG插件中实现对话框窗体按钮交互(下篇)

在上篇文章中,创建了一个带有两个按钮的窗体对话框,但仅仅是界面设计,还不能显示和响应用户的点击。本文将实现:点击工具栏按钮时,弹出该窗体对话框,在窗体对话框中单击“新建文档”按钮时,创建一个新的CDR文档;单击“一键转曲”按钮时,将当前选定的对象转换成曲线。 工程搭建准备 按照惯例,本篇文章的序号为012,请直接拷贝上一个工程011-form-dialog(拷贝前最好清理掉 Debug、x64等编译目录,因为这些文件夹不需要保留,新的工程在编译时会自动生成),然后将其重命名为012-form-d..

2021-05-08 23:14:06 115 4

原创 解释一下ConcurrentHashMap的锁分段技术

锁分段技术,或者叫做分段锁技术,指的是 ConcurrentHashMap 在JDK8之前实现锁的方式,用来提高并发访问的效率。它把数据分成16个桶,每次只加锁其中一个桶,在JDK8里面加入了红黑树和CAS算法,分段锁是为了解决 HashMap 线程不安全以及 HashTable 性能的问题。

2021-05-06 15:20:28 28

原创 讲一下HashMap和HashTable的区别

继承的父类不同。HashMap 继承自 AbstractMap,而 Hashtable 是继承自 Dictionary。对外提供的接口不同。Hashtable 比 HashMap 多提供了 elments() 和 contains() 两个方法。对 null key 和 null value 的支持不同。Hashtable 既不支持 null key,也不支持 null value。而 HashMap 中,null 可以作为键,但是这样的键只有一个。允许有一个或多个键所对应的值为 null。线程安全性不同。

2021-05-06 14:58:32 17

CorelDRAW X7 宏编程帮助文档|手册 CHM格式

CorelDRAW X7 官方帮助文档(参考手册)。手册为原生英文版本,主要包含自动化、宏、CQL查询介绍、对象和类属性、方法参考等内容。不管是使用VBA开发GMS插件,还是用C++开发CPG插件,这个手册都可以提供对象参考。

2020-10-28

CDR广告条幅批量制作插件V1.2源码(含GMS、全部窗体、模块、字体CMX模板文件)

这是由博主早期开发的一款CDR条幅制作插件,可用于广告门店、条幅制作厂家在CDR中使用该插件来快速、批量制作条幅。内置常见的条幅规格,支持横幅、竖幅混合排版,支持带落款条幅,所有感兴趣的人可以在这个源码基础上二次开发完善。当前V1.2版本是较稳定版本,修复了制作竖向条幅时报错问题,支持小字自定义方向(头部或尾部,默认尾部)、优化竖向条幅制作模板缺失文件的处理提示。 注意:此插件在X4中运行良好,在高版本CDR中可能有字体显示问题,暂时未做修复,二次开发者请注意这点。 如果在制作竖向条幅时,提示模板缺失(模板文件已经在资源里面一起打包了),请参照下图说明进行处理: https://images.gitee.com/uploads/images/2019/1201/133407_69268c78_875782.jpeg 因资源无法传图,插件的界面图片,请手动访问:https://images.gitee.com/uploads/images/2019/1011/233257_cb9719f6_875782.png

2021-06-01

CDR插件开发之文本处理.pdf

在CorelDRAW插件开发过程中,避免不了处理文本,本文档涵盖了常见的文本处理代码,例如:创建美术字文本、段落文本、解决文本溢出、查找字符、替换文本、调整字符间距等20种处理方式,适合CDR插件开发者在编写CDR插件时作为参考。

2021-05-28

CDR《GMS引导加载器》CPG插件及完整源码(基于VS2019、C++)

GMS引导加载器(gms-bootstrap-loader.cpg)—— 使用C++编写的CPG插件,该插件是一个“让GMS插件能自动运行的插件”,只有一个核心功能:强制加载VBA模块,绕过CDR软件中设置的延迟加载VBA选项,使用户自己编写的GMS插件中的全局宏立即生效,实现CDR启动时就能运行GMS插件中的自定义功能。该插件适合GMS插件开发者,在自己的插件中实现CDR启动后执行全局任务的能力。源码包含超详细注释,下载后即可在VS2019中打开,编译生成CPG插件,并在CDR中运行。此源码属于高阶CDR插件开发技术,极具价值的稀缺资源,可用于CPG插件学习,或者在此源码基础上进行二次开发。

2021-02-19

SpringBoot使用JMS的小例子(ActiveMQ实现)

这个Demo程序演示了如何使用SpringBoot来构建一个最简单的基于ActiveMQ的JMS程序。

2016-10-02

Mysql_driver.jar

使用MySQL数据库必需的驱动包,程序中加载的名称:“com.mysql.jdbc.Driver”

2014-03-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除