VBA语言基础 第一节 标识符 一.定义 标识符是一种标识变量、常量、过程、函数、类等语言构成单位的符号,利用它可以完成对变量、常量、过程、函数、类等的引用。 二.命名规则 1) 字母打头,由字母、数字和下划线组成,如 A987b_23Abc 2) 字符长度小于40,(Excel2002以上中文版等,可以用汉字且长度可达254个字符) 3) 不能与VB保留字重名,如public, private,
转载 2024-04-18 13:41:32
134阅读
一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.exe进程中可以运行很多线程线程总是属于某个进程,进程中的多个线程共享进程的内
转载 2024-06-26 10:56:11
25阅读
第一部分:API函数简介1.       SetWindowsHookEx函数函数原型HHOOK SetWindowsHookEx(  int idHook,        // hooko application ins
原创 2022-10-20 10:36:04
422阅读
第一部分:API函数简介1.       SetWindowsHookEx函数函数原型HHOOK SetWindowsHookEx(  int idHook,        // hook type  HOOKPROC lpfn,     // hook procedure  HINSTANCE hMod,    // handle to application instance  DWORD d
转载 2013-12-27 17:56:00
173阅读
简介线程是执行并发的单元,有自己的本地存储栈(ThreadLocal),存储参数和局部变量,所有的APP启动的时候,都至少有一个线程(主线程)在运行。系统提供了两种开启线程的方式:1)继承Thread,重写run()方法;2)在Thread的构造函数传入Runnable;然后调用start()方法开启线程。每一个线程都有一个优先级影响系统调用线程的先后顺序;可以通过setPriority(int
前言:C++ 11通过标准库引入了对多线程的支持,这个是c++的新特性之一,也就是说我们直接用即可,使得C++在并行编程时不需要依赖第三方库,而且在原子操作中还引入了原子类的概念(这个后文会讲到)。线程啥的就不再解释了,直接上干货;头文件一定记得写如下几个:#include <thread> //线程库 #include <condition_variable>
转载 2024-04-07 22:35:18
34阅读
最近线程池用的比较多,感觉挺有意思。在此记录一下,线程池的创建有4种方式; 1 .Executors.newCachedThreadPool(); 构造方法为: 可以看到,CachedThreadPool使用的是同步队列SynchronousQueue。该队列不会缓冲元素,有消费时,才会继续添加任务到队列中。所以为了保证线程池的缓冲作用,最大线程数maxPoolSize一般是INTEGER.MAX
在java中,如果我们要使用一个线程, 那么我们可以这样创建一个线程Thread thread= new Thread() { @Override public void run() { l.add(random.nextInt()); } }; thread.start();然而这样做的坏处是, 每次都需要
转载 2023-06-16 16:58:25
47阅读
频繁的启动关闭一个线程的成本是很高的,而Java线程依赖于内核线程,创建线程需要进行操作系统状态切换,所以才有了线程池的概念,通过在初始化的时候创建大量的线程,放在线程池中,程序将一个Runnable对象传给线程池,线程会启动一个线程去执行他们的run方法。当执行完毕后,该线程不会马上死亡,而是会交还给线程池中,等待下一个。 主要的线程池有: ExecuteService:代表尽快执行任务的线程
转载 2023-08-21 22:18:03
49阅读
JVM进程中没有活跃的非守护线程,或者受到了系统的中断信号,JVM进程便会退出。想JVM程序中添加一个hook线程,在JVM进程退出的时候,hook线程便会执行。我们可以使用hook线程防止程序重复启动或者回收系统资源。
java线程开发生产者、消费者wait() notifyall()商店: 货架–数组面包商:有多个 多线程 要往数组里方面包顾客: 买面包,只要买走了,唤醒面包商线程池package com.qf.pro2103.day19; import java.lang.reflect.Executable; import java.util.concurrent.ExecutorService; imp
'功能:创建多线程类,用于初始化线程。 类名:cls_Thread '参数:LongPointFunction 用于接收主调过程传递过来的函数地址值 '调用方法:1.声明线程类对象变量 Dim mythread as cls_Thread ' 2.调用形式:With mythread ' .Initialize AddressO
转载 2023-06-08 09:12:46
367阅读
首先明确线程代码的边界。其实很简单,Runnable接口的run方法所界定的边界就可以看作是线程代码的边界。Runnable接口中run方法原型如下: public void run();而所有的具体线程都实现这个方法,所以这里就明确了一点,线程代码不能抛出任何checked异常。所有的线程中的checked异常都只能被线程本身消化掉。:) 这样本身也是符合线程的设计理念的,线程本身就是被看作独立
转载 2023-09-12 14:51:11
46阅读
钩子程序钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程序以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。中文名钩子程序外文名Hook类    型处理消息的程序段平   &nb
 Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口
一、基本概念: 钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消
转载 2024-01-13 22:25:20
66阅读
  在线上Java程序中经常遇到进程程挂掉,一些状态没有正确的保存下来,这时候就需要在JVM关掉的时候执行一些清理现场的代码。Java中得ShutdownHook提供了比较好的方案。   JDK在1.3之后提供了Java Runtime.addShutdownHook(Thread hook)方法,可以注册一个JVM关闭的钩子,这个钩子可以在以下几种场景被调用:1)程序正常退出 2)使用Sys
转载 2023-09-02 07:08:54
0阅读
首先给出结论:t.join()方法只会使调用该方法的线程进入t对象的等待池,并等待t线程执行完毕后才会被唤醒。并不影响同一时刻处在运行状态的其他线程。一、使用方式join是Thread类的一个方法,启动线程后直接调用,例如:Thread t = new AThread(); t.start(); t.join();二、为什么要用join()方法在很多情况下,主线程生成并起动了子线程,如果子线程里要
钩子其实就是调用一下API而已:1、安装钩子:   SetWindowsHookEx    函数原形:HHOOK SetWindowsHookEx(                       int       idHook,    // 钩子类型,                       HOOKPROC  lpfn,      // 钩子函数地址                     
基本概念pthread_cancel调用并不等待线程终止,它只提出请求。线程在取消请求(pthread_cancel)发出后会继续运行, 直到到达某个取消点(CancellationPoint)。取消点是线程检查是否被取消并按照请求进行动作的一个位置.与线程取消相关的pthread函数 int pthread_cancel(pthread_t thread) 发送终止信号给thread线程,如果成
  • 1
  • 2
  • 3
  • 4
  • 5