线程 策略 方式
c++11新特性之线程相关所有知识点
c++11关于并发引入了好多好东西,这里按照如下顺序介绍: std::thread相关 std::mutex相关 std::lock相关 std::atomic相关 std::call_once相关 volatile相关 std::condition_variable相关 std::future相关 ......
多线程面试题
1.多线程的主要参数有哪些,有什么用? 1)corePoolSize(核心线程数) 指的是长期存活的线程数。比如地主家的长工,无论这一年活多还是活少,都不会被辞退。 2)maximumPoolSize(最大线程数) 指的是线程池允许创建的最大线程数,其中包含核心线程数(最大线程数 >= 核心线程数) ......
20230418 2. 策略模式 - 商场促销
## 介绍 简单工厂模式虽然也能解决这个问题,但这个模式只是解决对象的创建问题,而且由于工厂本身包括所有的收费方式,商场是可能经常性地更改打折额度和返利额度,每次维护或扩展收费方式都要改动这个工厂,以致代码需重新编译部署,这真的是很糟糕的处理方式,所以用它不是最好的办法。面对算法的时常变动,应该有更 ......
【QCustomPlot】使用方法(动态库方式)
使用 QCustomPlot 绘图库辅助开发时整理的学习笔记。本篇介绍 QCustomPlot 的一种使用方法,通过动态库的方式进行使用,示例中使用的 QCustomPlot 版本为 Version 2.1.1。 ......
【操作系统】【进程管理】线程崩溃了,进程也会崩溃吗?
1 前言 这节我们来看个问题就是:为什么线程崩溃崩溃不会导致 JVM 崩溃的问题。 本文分以下几节来探讨 线程崩溃,进程一定会崩溃吗 进程是如何崩溃的-信号机制简介 为什么在 JVM 中线程崩溃不会导致 JVM 进程崩溃 openJDK 源码解析 我们开始。 2 线程崩溃,进程一定会崩溃吗? 一般来 ......
【操作系统】【进程管理】一个进程最多可以创建多少个线程?
1 前言 这节我们来看个问题就是:一个进程最多可以创建多少个线程? 不同的操作系统和不同位数的操作系统,虚拟内存可能是不一样多。 Windows 系统我不了解,我就说说 Linux 系统。 在 Linux 操作系统中,虚拟地址空间的内部又被分为内核空间和用户空间两部分,不同位数的系统,地址 空间的范 ......
将Windows11/10的图片默认打开方式更为旧版的「Windows 照片查看器」
简述步骤 打开「设置默认程序」或「默认应用」; 键入「.+扩展名」以搜索; 如「.jpg」、「.png」 注意:扩展名前需加「.」 此时,下方会显示当前该扩展名使用的应用,点击它; 此时,会弹出所有相关应用的列表,选择「Windows 照片查看器」,确定。 详细步骤 请参考以下图片 一: 二: Wi ......
在 Windows 系统上实现端口映射可以采用多种方式,以下是其中两种常用的方法
在 Windows 系统上实现端口映射可以采用多种方式,以下是其中两种常用的方法: 使用路由器进行端口映射:将路由器连接到 Internet 上,并将要公网访问的服务所在的计算机连接到路由器上,然后在路由器的设置页面中进行端口映射的配置,将来自公网的访问请求转发到指定的内部 IP 地址和端口号。具体 ......
std::thread 六:多线程&单例类
为了避免单例类在多线程中重复的创建,下面提供了两种解决方法: 1.互斥锁+双重检查 2.std::call_once() 方法一:互斥锁+双重检查 #include <iostream> #include <thread> #include <mutex> #include <list> using ......
std::thread 一:创建线程的三种方式
前言: #include <thread> thread.join() // 阻塞 thread.detach() // 非阻塞 thread.joinable() // bool,判断线程是否支持join或者detach 正文: 创建线程有三种方式,分别是:使用函数来创建线程、使用自定义的类来创建 ......
Java多线程-Lesson01-线程的创建
线程创建的三种方式 继承Thread类 步骤: 继承Thread类 重写run()方法 调用start()开启线程 重写run()方法: @Override public void run() { for (int i = 0; i < 200; i++) { System.out.println( ......
Grafana系列-GaC-1-Grafana即代码的几种实现方式
## 系列文章 * [Grafana 系列文章](https://ewhisper.cn/tags/Grafana/) * [Terraform 系列文章](https://ewhisper.cn/tags/Terraform/) ## 概述 GaC(Grafana as Code, Grafana ......
【QCustomPlot】使用方法(源码方式)
使用 QCustomPlot 绘图库辅助开发时整理的学习笔记。本篇介绍 QCustomPlot 的一种使用方法,通过包含源码的方式进行使用,这也是最常用的方法,示例中使用的 QCustomPlot 版本为 Version 2.1.1。 ......
基于策略梯度的强化学习算法
[toc] 《基于策略梯度的强化学习算法》 引言 强化学习是一种通过不断地试错和调整策略来最大化长期奖励的学习技术。在强化学习中,智能体通过与环境交互来学习最优策略,并通过执行这些策略来获得奖励。本文将介绍一种基于策略梯度的强化学习算法,该算法将策略梯度用于优化智能体的动作选择。 技术原理及概念 1 ......
重拾线程池状态5种状态
线程池状态分类 线程的状态具有运行与关闭的状态,那么 线程池 也不例外。java 线程池具有五种状态。 RUNNING SHUTDOWN STOP TIDYING TERMINATED 见源码 ThreadPoolExecutor 类种的 属性 // runState is stored in th ......
C++创建对象的3种方式对比
三种方式分别为 等号,圆括号,大括号 等号和圆括号是以前就存在的,大括号是新的语法,其具有2个优点: 1. 防止变窄转换: 大括号不支持变窄转换,等号和圆括号为了向下兼容支持变窄转换 2. 免疫C++最令人头疼的解析: C++规定任何可以被解析为一个声明的东西必须被解析为声明,因此无法区分无参的构造 ......
十七、区块量化 鳄鱼线策略
# -*- coding: utf-8 -*-import talibimport cross_order as orderimport timeimport numpy as np"""鳄鱼线原理: 鳄鱼线是根据几何学以及非线性动力学总结出来的一套技术分析方法,当鳄鱼的下巴、牙齿和上唇闭合,或者相 ......
十八、区块量化 CCI策略
# -*- coding: utf-8 -*-import talibimport cross_order as orderimport timeCCI_TIMEPERIOD = 20 # CCI计算周期CCI_OVER_SOLD_THRESH = -250 # 超卖阈值CCI_OVER_BOUGH ......
一篇搞定守护线程和非守护线程的区别
需求:如果想让某个线程随着主线程的结束而结束,该如何做? 例如线程a如何随着主线程的结束而结束,解决这个问题我们就要应用线程的守护线程(后台线程),这样线程就会随着主线程的结束而结束。 在Java 中,可以创建两种线程 守护线程 守护线程 就是大家常说的 Daemon Thread 线程也叫 后台线 ......
使用MaskableGraphic画线段-生成Mesh方式
``` using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; public class ......
十六、区块量化 MACD策略
新增cross_macd_order.py # -*- coding: utf-8 -*-import talibimport cross_order as orderimport timedef main(): print("任务开始时间:", time.strftime('%Y-%m-%d %H ......
十五、区块量化 双均线策略
新增cross_dualma_order.py # -*- coding: utf-8 -*-import cross_order as orderimport timeSHORT_WIN = 50 # 短周期窗口LONG_WIN = 200 # 长周期窗口def main(): print("任务 ......
十四、区块量化 dual thrust策略
新增cross_dual_thrust_order.py文件 # -*- coding: utf-8 -*-import cross_order as orderimport timeSHORT_WIN = 10 # 短周期窗口SHORT_K1 = 0.5SHORT_K2 = 0.5def dual ......
禁用 Windows Server 2022 密码过期策略的批处理命令 密码永不过期
禁用 Windows Server 2022 密码过期策略的批处理命令: 打开记事本,将以下命令复制粘贴到记事本中: wmic path Win32_UserAccount where "LocalAccount=True AND PasswordExpires=True" set Password ......
【CUDA】SM对线程块的调度
sm流处理器簇对blocks的调度策略 在cuda中,GPU中的SM(GTX650M有2个sm处理器)被GPU调度器把线程块逐个分配到SM上,每个SM同时处理这个被分配的线程块,但是每次每个时刻都只能处理一个warp线程束,由于有时会存在内存读取等操作导致等待,那么SM会转而处理其他的warp来掩盖 ......
后台用异步线程调用的场景
一.异步执行的场景: 完成业务后,发短信、发邮件、微信公众号等消息推送提示的功能,可以采用异步执行。 在导入数量量过大等情况下,可以使用异步导入的方式,提高导入时间等。 ...等等 二.实现的方式: 1.springboot中,进行线程池配置,然后用@Async标识异步执行方法即可,如下:(需要注意 ......
Java中线程等待和唤醒
## Java中线程等待和唤醒 本文主要是对Java中线程等待、唤醒相关的内容进行总结。 ## 线程的生命周期和状态 Java 线程在运行的生命周期中的指定时刻只可能处于下面 6 种不同状态的其中一个状态: - `NEW`: 初始状态,线程被创建出来但没有被调用 `start()` 。 - `RUN ......
FireDac三种方式批量添加数据的性能对比
我有个程序,需要从CSV中读入数据,对数据进行分析后,然后插入另一个sqlite数据库的数据表。在我的程序中使用了virtual string tree和Firedac,数据大约有13000条,需要转存的数据有11000条左右,转存的字段有8条,除了一条是boolean类型的外都是string类型。 ......
策略模式
行为型:策略模式 定义 定义一系列的算法,将他们一个个封装起来,使他们直接可以相互替换。 算法:就是写的逻辑可以是你任何一个功能函数的逻辑 封装:就是把某一功能点对应的逻辑给抽出来 可替换:建立在封装的基础上,这些独立的算法可以很方便的替换 通俗的理解就是,把你的算法(逻辑)封装到不同的策略中,在不 ......