当前位置: 首页 > news >正文

【jstack查询线程信息】1.对比下arthas的thread 和jvm指令

1)jps拿到进程号

2)jstack <pid> > <xxx.txt> // jstack作用:分析线程信息,死循环,死锁

jstack 23647 > 23647.txt 

Found 1 deadlock

3)对比:arthas查看线程信息

[arthas@68751]$ thread -n 10
"MainWorker" Id=69 cpuUsage=72.29% deltaTime=156ms time=91183068ms WAITINGat app//com.elex.billion.icefire.game.biz.service.impl.robot.RobotServiceImpl.lambda$testFightTroop$0(RobotServiceImpl.java:493)at app//com.elex.billion.icefire.game.biz.service.impl.robot.RobotServiceImpl$$Lambda$979/0x000000080111f440.test(Unknown Source)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.lambda$findObjects$4(AbstractSceneObjectCellContainer.java:342)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer$$Lambda$980/0x000000080111ec40.accept(Unknown Source)at java.base@11.0.16.1/java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4772)at java.base@11.0.16.1/java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1085)at app//com.elex.icefire.scene.object.SceneObjectContainer.forEach(SceneObjectContainer.java:183)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.lambda$forEachObjectInRect$0(AbstractSceneObjectCellContainer.java:171)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer$$Lambda$981/0x000000080111e040.accept(Unknown Source)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.forEachCellInRect(AbstractSceneObjectCellContainer.java:122)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.forEachCellInRect(AbstractSceneObjectCellContainer.java:157)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.forEachObjectInRect(AbstractSceneObjectCellContainer.java:171)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.forEachObjectInBoundingBox(AbstractSceneObjectCellContainer.java:188)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.findObjects(AbstractSceneObjectCellContainer.java:341)at app//com.elex.icefire.scene.object.AbstractSceneObjectCellContainer.findObjects(AbstractSceneObjectCellContainer.java:323)at app//com.elex.billion.icefire.game.biz.service.impl.robot.RobotServiceImpl.testFightTroop(RobotServiceImpl.java:493)at app//com.elex.billion.icefire.game.biz.service.impl.robot.instance.FightNpcInstance.onInstanceTick(FightNpcInstance.java:162)at app//com.elex.billion.icefire.game.biz.service.impl.robot.RobotServiceImpl.playerForcedLowTick(RobotServiceImpl.java:133)at app//com.elex.billion.icefire.game.biz.service.flow.LogicServiceManager.playerForcedLowTick(LogicServiceManager.java:268)at app//com.elex.billion.icefire.game.biz.service.impl.player.PlayerTickHandler.tick(PlayerTickHandler.java:39)at app//com.elex.billion.icefire.game.biz.service.impl.player.PlayerTickHandler.tick(PlayerTickHandler.java:14)at app//com.elex.billion.icefire.game.biz.common.AbstractTickerUnitManager.tick(AbstractTickerUnitManager.java:97)at app//com.elex.billion.icefire.game.biz.model.world.World.tick(World.java:190)at app//com.elex.billion.icefire.game.biz.exec.MainTask.run(MainTask.java:83)at app//com.elex.billion.icefire.game.biz.exec.MainWorker.execute(MainWorker.java:55)at app//com.elex.framework.core.thread.SingleThreadTaskWorker.run(SingleThreadTaskWorker.java:158)at app//com.elex.framework.core.thread.NamedRunnable.run(NamedRunnable.java:65)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)at java.base@11.0.16.1/java.lang.Thread.run(Thread.java:834)"AsyncOperationServiceImpl-thread-26" Id=198 cpuUsage=51.81% deltaTime=112ms time=405798ms RUNNABLEat java.base@11.0.16.1/java.net.SocketInputStream.socketRead0(Native Method)at java.base@11.0.16.1/java.net.SocketInputStream.socketRead(SocketInputStream.java:115)at java.base@11.0.16.1/java.net.SocketInputStream.read(SocketInputStream.java:168)at java.base@11.0.16.1/java.net.SocketInputStream.read(SocketInputStream.java:140)at app//com.mongodb.internal.connection.SocketStream.read(SocketStream.java:109)at app//com.mongodb.internal.connection.SocketStream.read(SocketStream.java:131)at app//com.mongodb.internal.connection.InternalStreamConnection.receiveResponseBuffers(InternalStreamConnection.java:648)at app//com.mongodb.internal.connection.InternalStreamConnection.receiveMessageWithAdditionalTimeout(InternalStreamConnection.java:513)at app//com.mongodb.internal.connection.InternalStreamConnection.receiveCommandMessageResponse(InternalStreamConnection.java:356)at app//com.mongodb.internal.connection.InternalStreamConnection.sendAndReceive(InternalStreamConnection.java:280)at app//com.mongodb.internal.connection.UsageTrackingInternalConnection.sendAndReceive(UsageTrackingInternalConnection.java:100)at app//com.mongodb.internal.connection.DefaultConnectionPool$PooledConnection.sendAndReceive(DefaultConnectionPool.java:490)at app//com.mongodb.internal.connection.CommandProtocolImpl.execute(CommandProtocolImpl.java:71)at app//com.mongodb.internal.connection.DefaultServer$DefaultServerProtocolExecutor.execute(DefaultServer.java:255)at app//com.mongodb.internal.connection.DefaultServerConnection.executeProtocol(DefaultServerConnection.java:202)at app//com.mongodb.internal.connection.DefaultServerConnection.command(DefaultServerConnection.java:118)at app//com.mongodb.internal.operation.MixedBulkWriteOperation.executeCommand(MixedBulkWriteOperation.java:431)at app//com.mongodb.internal.operation.MixedBulkWriteOperation.executeBulkWriteBatch(MixedBulkWriteOperation.java:251)at app//com.mongodb.internal.operation.MixedBulkWriteOperation.access$700(MixedBulkWriteOperation.java:76)at app//com.mongodb.internal.operation.MixedBulkWriteOperation$1.call(MixedBulkWriteOperation.java:194)at app//com.mongodb.internal.operation.MixedBulkWriteOperation$1.call(MixedBulkWriteOperation.java:185)at app//com.mongodb.internal.operation.OperationHelper.withReleasableConnection(OperationHelper.java:620)at app//com.mongodb.internal.operation.MixedBulkWriteOperation.execute(MixedBulkWriteOperation.java:185)at app//com.mongodb.internal.operation.MixedBulkWriteOperation.execute(MixedBulkWriteOperation.java:76)at app//com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:195)at app//com.mongodb.client.internal.MongoCollectionImpl.executeSingleWriteRequest(MongoCollectionImpl.java:1009)at app//com.mongodb.client.internal.MongoCollectionImpl.executeUpdate(MongoCollectionImpl.java:993)at app//com.mongodb.client.internal.MongoCollectionImpl.updateOne(MongoCollectionImpl.java:578)at app//com.elex.billion.icefire.game.biz.service.impl.db.DBService.doUpdateOneEntity(DBService.java:252)at app//com.elex.billion.icefire.game.biz.service.impl.db.DBAsyncSave.saveDB(DBAsyncSave.java:127)at app//com.elex.billion.icefire.game.biz.service.impl.db.DBAsyncSave.run(DBAsyncSave.java:108)at app//com.elex.billion.icefire.game.biz.service.impl.AsyncOperationServiceImpl.internalAsyncRunner(AsyncOperationServiceImpl.java:128)at app//com.elex.billion.icefire.game.biz.service.impl.AsyncOperationServiceImpl.lambda$execute$0(AsyncOperationServiceImpl.java:84)at app//com.elex.billion.icefire.game.biz.service.impl.AsyncOperationServiceImpl$$Lambda$599/0x0000000800cfac40.run(Unknown Source)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)at java.base@11.0.16.1/java.lang.Thread.run(Thread.java:834)"So-Worker-BigWorld-t8" Id=236 cpuUsage=43.67% deltaTime=94ms time=21315607ms WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@213dd41dat java.base@11.0.16.1/jdk.internal.misc.Unsafe.park(Native Method)-  waiting on java.util.concurrent.locks.ReentrantLock$NonfairSync@213dd41dat java.base@11.0.16.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)at java.base@11.0.16.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:885)at java.base@11.0.16.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:917)at java.base@11.0.16.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1240)at java.base@11.0.16.1/java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:267)at app//ch.qos.logback.core.OutputStreamAppender.writeBytes(OutputStreamAppender.java:200)at app//ch.qos.logback.core.OutputStreamAppender.writeOut(OutputStreamAppender.java:193)at app//ch.qos.logback.core.OutputStreamAppender.subAppend(OutputStreamAppender.java:228)at app//ch.qos.logback.core.OutputStreamAppender.append(OutputStreamAppender.java:102)at app//ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:85)at app//ch.qos.logback.core.spi.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:51)at app//ch.qos.logback.classic.Logger.appendLoopOnAppenders(Logger.java:272)at app//ch.qos.logback.classic.Logger.callAppenders(Logger.java:259)at app//ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:426)at app//ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:386)at app//ch.qos.logback.classic.Logger.info(Logger.java:596)at app//com.elex.service.conf.model.fight.GameFormula.baseAttack(GameFormula.java:224)at app//com.elex.service.conf.model.fight.GameFormula.attack(GameFormula.java:242)at app//com.elex.icefire.scene.object.model.skill.effect.SSE_Hurt.castToTarget(SSE_Hurt.java:99)at app//com.elex.icefire.scene.object.model.skill.effect.SSE_Hurt.castTo(SSE_Hurt.java:53)at app//com.elex.icefire.scene.object.model.skill.effect.AbstractSceneSkillEffect.castTo(AbstractSceneSkillEffect.java:272)at app//com.elex.icefire.scene.object.model.skill.SceneNormalAttackSkill.attack(SceneNormalAttackSkill.java:44)at app//com.elex.icefire.scene.object.model.SceneBattle.normalAttack(SceneBattle.java:681)at app//com.elex.icefire.scene.object.model.SceneBattle.action1(SceneBattle.java:596)at app//com.elex.icefire.scene.object.model.SceneBattle.updateAction(SceneBattle.java:497)at app//com.elex.icefire.scene.ticker.SOT_Battle.lambda$updateObjects$4(SOT_Battle.java:82)at app//com.elex.icefire.scene.ticker.SOT_Battle$$Lambda$998/0x000000080115dc40.accept(Unknown Source)at java.base@11.0.16.1/java.lang.Iterable.forEach(Iterable.java:75)at app//com.elex.billion.icefire.core.thread.ThreadUtils.listObjectAction(ThreadUtils.java:79)at app//com.elex.billion.icefire.core.thread.ThreadUtils.lambda$forEach$3(ThreadUtils.java:55)at app//com.elex.billion.icefire.core.thread.ThreadUtils$$Lambda$902/0x0000000800fb3c40.run(Unknown Source)at java.base@11.0.16.1/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1736)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)at java.base@11.0.16.1/java.lang.Thread.run(Thread.java:834)"So-Worker-BigWorld-t4" Id=232 cpuUsage=34.88% deltaTime=75ms time=21301342ms WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@213dd41dat java.base@11.0.16.1/jdk.internal.misc.Unsafe.park(Native Method)-  waiting on java.util.concurrent.locks.ReentrantLock$NonfairSync@213dd41dat java.base@11.0.16.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)at java.base@11.0.16.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:885)at java.base@11.0.16.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:917)at java.base@11.0.16.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1240)at java.base@11.0.16.1/java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:267)at app//ch.qos.logback.core.OutputStreamAppender.writeBytes(OutputStreamAppender.java:200)at app//ch.qos.logback.core.OutputStreamAppender.writeOut(OutputStreamAppender.java:193)at app//ch.qos.logback.core.OutputStreamAppender.subAppend(OutputStreamAppender.java:228)at app//ch.qos.logback.core.OutputStreamAppender.append(OutputStreamAppender.java:102)at app//ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:85)at app//ch.qos.logback.core.spi.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:51)at app//ch.qos.logback.classic.Logger.appendLoopOnAppenders(Logger.java:272)at app//ch.qos.logback.classic.Logger.callAppenders(Logger.java:259)at app//ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:426)at app//ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:386)at app//ch.qos.logback.classic.Logger.info(Logger.java:596)at app//com.elex.service.conf.model.fight.GameFormula.attack(GameFormula.java:269)at app//com.elex.icefire.scene.object.model.skill.effect.SSE_Hurt.castToTarget(SSE_Hurt.java:99)at app//com.elex.icefire.scene.object.model.skill.effect.SSE_Hurt.castTo(SSE_Hurt.java:53)at app//com.elex.icefire.scene.object.model.skill.effect.AbstractSceneSkillEffect.castTo(AbstractSceneSkillEffect.java:272)at app//com.elex.icefire.scene.object.model.skill.SceneNormalAttackSkill.attack(SceneNormalAttackSkill.java:44)at app//com.elex.icefire.scene.object.model.SceneBattle.normalAttack(SceneBattle.java:681)at app//com.elex.icefire.scene.object.model.SceneBattle.action1(SceneBattle.java:596)at app//com.elex.icefire.scene.object.model.SceneBattle.updateAction(SceneBattle.java:497)at app//com.elex.icefire.scene.ticker.SOT_Battle.lambda$updateObjects$4(SOT_Battle.java:82)at app//com.elex.icefire.scene.ticker.SOT_Battle$$Lambda$998/0x000000080115dc40.accept(Unknown Source)at java.base@11.0.16.1/java.lang.Iterable.forEach(Iterable.java:75)at app//com.elex.billion.icefire.core.thread.ThreadUtils.listObjectAction(ThreadUtils.java:79)at app//com.elex.billion.icefire.core.thread.ThreadUtils.lambda$forEach$3(ThreadUtils.java:55)at app//com.elex.billion.icefire.core.thread.ThreadUtils$$Lambda$902/0x0000000800fb3c40.run(Unknown Source)at java.base@11.0.16.1/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1736)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)at java.base@11.0.16.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)at java.base@11.0.16.1/java.lang.Thread.run(Thread.java:834)

4)jvm命令快速查看是否有死锁

可以看出来,我主要想看下是否有死锁情况,此时我用arthas的jvm命令看的会更加清楚:

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------THREAD
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------COUNT                                                 277DAEMON-COUNT                                          108PEAK-COUNT                                            279STARTED-COUNT                                         474DEADLOCK-COUNT                                        0    // 所以暂时是没有死锁的

相关文章:

【jstack查询线程信息】1.对比下arthas的thread 和jvm指令

1)jps拿到进程号 2)jstack <pid> > <xxx.txt> // jstack作用:分析线程信息,死循环,死锁 jstack 23647 > 23647.txt Found 1 deadlock 3)对比:arthas查看线程信息 [arthas68751]$ thread -n 10 "MainWorker" Id69 cpuUsage72.29% deltaTime156ms …...

苦瓜书盘官网,免费pdf/mobi电子书下载网站

苦瓜书盘&#xff08;kgbook&#xff09;是一个专注于提供6英寸PDF和MOBI格式电子书的免费下载平台&#xff0c;专为电子阅读器用户设计。该平台为用户提供了丰富的电子书资源&#xff0c;涵盖文学、历史、科学、技术等多个领域&#xff0c;旨在打造一个全面的电子书资源库。用…...

【AI】AI开源IDE:CLine源码分析报告

1. 源码位置&#xff1a; CLine 是一个开源的 VSCode 插件&#xff0c;其完整源码托管在 GitHub 的 cline/cline 仓库中。这个仓库包含 CLine 的核心逻辑&#xff08;TypeScript 编写&#xff09;&#xff0c;包括与 LLM 的对话控制、工具调用接口&#xff0c;以及 VSCode 插件…...

Nacos学习笔记-占位符读取其他命名空间内容

Nacos当前命名空间下的配置文件需要跨命名空间读取其他配置文件的内容。可以先通过Nacos提供的API接口获取配置文件内容&#xff0c;然后解析数据将其放入环境的PropertySource中。 相关依赖包 <!-- Nacos依赖包 --> <dependency><groupId>com.alibaba.clo…...

HarmonyOS 音频录制与播放模块

HarmonyOS 音频录制与播放模块 1.模块功能概览 麦克风权限动态检测与申请音频录制功能&#xff08;支持参数配置&#xff09;音频波形实时可视化&#xff08;暂时未完善&#xff0c;先凑合看&#xff0c;后续会完善&#xff09;录音文件播放功能 2.权限检测流程 1.代码实现…...

小白学Agent技术[4](Agent设计模式)

文章目录 Agent设计模式Zero shotFew shot应用场景 技术特性对比ReAct模式ReAct模式简介ReAct模式举例ReAct模式实现 Plan and Solve模式实现原理 Reason without Observation模式LLMCompiler模式实现原理 Basic ReflectionBasic Reflection原理 Reflexion 模式Reflexion 模式原…...

Google参数逆向 谷歌搜索

背景 从2025年1月15日开始&#xff0c;Google强制用户开启JavaScript才能使用Google搜索功能。 由于此前业务需要调用Google搜索功能去寻找目标资源进行下载&#xff0c;Google的改版导致整条产线全部瘫痪&#xff0c;急需解决方案。 业务每日需要Google搜索数百万次 临时解决方…...

OneM2M:全球性的物联网标准-可应用于物联网中

OneM2M 是一个全球性的物联网(IoT)标准,旨在为物联网设备和服务提供统一的框架和接口,以实现设备之间的互操作性、数据共享和服务集成。OneM2M 由多个国际标准化组织(如 ETSI、TIA、TTC、ARIB 等)共同制定,目标是解决物联网领域的碎片化问题,提供一个通用的标准,支持跨…...

MySQL环境搭建和基本操作

前言 MySQL是现在最为流行的数据库&#xff0c;而且是开源的&#xff0c;任何人都可以在Internet下载,进行安装。 MySQL环境搭建 一、软件包安装 MySQL是目前最为流行的开放源码的数据库&#xff0c;是完全网络化的跨平台的关系型数据库系统&#xff0c;它是由瑞典MySQLAB公司…...

【GIT】non-fast-forward错误

遇到 non-fast-forward 错误时&#xff0c;通常是因为远程仓库有本地尚未包含的提交&#xff08;如远程仓库初始化时自动生成的 README.md 等文件&#xff09;。以下是分步解决方案&#xff1a; 1. 拉取远程更改并合并历史 git pull origin master --allow-unrelated-historie…...

深入了解Linux —— 调试程序

前言 我们已经学习了linux下许多的工具&#xff0c;vim、gcc、make/makefile等&#xff1b; 已经能够在linux写代码&#xff0c;并且进行编译运行&#xff0c;让程序在linux下跑起来。 但是&#xff0c;如果我们在写代码的时候遇见了错误&#xff1b;但是我们并不知道错误在哪&…...

JVM - 3.垃圾回收

1.垃圾收集的经典问题 1.哪些内存需要回收2.什么时候回收3.如何回收1.你知道哪几种垃圾回收器&#xff0c;各自的优缺点&#xff0c;重点讲一下cms和g12.JVM GC算法有哪些&#xff0c;目前的JDK版本采用什么回收算法3.G1回收器的回收过程 1.Java中垃圾的定义&#xff08;Garbag…...

vs code 设置字体颜色

修改setting.json文件 {"remote.SSH.remotePlatform": {"ubuntu": "linux"},// "workbench.colorTheme": "One Dark Pro",// "editor.semanticTokenColorCustomizations": {// },"editor.semanticTokenColo…...

MoonSharp 文档一

目录 1.Getting Started(入门手册) 步骤1:在 IDE 中引入 MoonSharp 步骤2:引入命名空间 步骤3:调用脚本 步骤4:运行代码 2.Keeping a Script around(保留一个脚本) 步骤1:复现前教程所有操作 步骤2:改为创建Script对象 步骤3:访问全局环境 步骤4:直接调用…...

Unity3D 图形渲染(Graphics Rendering)详解

前言 Unity3D 是一款广泛使用的游戏引擎&#xff0c;其图形渲染系统是开发者创建高质量视觉效果的核心。本文将深入探讨 Unity3D 的图形渲染管线、渲染技术、以及如何通过代码实现自定义渲染效果。 对惹&#xff0c;这里有一个游戏开发交流小组&#xff0c;大家可以点击进来一…...

计算机视觉图像点运算【灰度直方图均衡化图形界面实操理解 +开源代码】

对一个数字图像处理系统来说&#xff0c;一般的处理过程为三个步骤&#xff1a;图像预处理、特征抽取、图像识别和分析。图像的点运算就是预处理过程中的重要一步&#xff0c;点运算是对图像的灰度级进行变换。 图像点运算概念 点运算是指对图像的每个像素依次进行相同的灰度变…...

在Windows 7操作系统,基于llama.cpp本地化部署 deepseek-r1模型的方法 2025-02-08

一、概述 现在已经是大模型时代。 个人认为&#xff0c;deepseek效果惊艳&#xff0c;大模型已进入实用阶段。 有些电脑&#xff0c;由于种种原因&#xff0c;还在用 Windows 7&#xff0c; Windows XP 等操作系统。 为了让这些电脑用上大模型&#xff0c;本教程在 llama.c…...

力扣146 - LRU缓存

视频讲解 哈希 双向链表 为什么要用双向链表&#xff1f; 快速删除节点&#xff08;O(1&#xff09;&#xff09; 如果是单链表的话&#xff0c;删除一个节点时&#xff0c;需要从头遍历&#xff0c;找到前驱节点&#xff0c;才能修改 prev->next&#xff0c;导致 O(n)…...

C++ 算法竞赛STL以及常见模板

目录 STL /*═══════════════ Vector ═══════════════*/ /*════════════════ Pair ════════════════*/ /*══════════════ String ════════════════*/ /*══════════…...

微信小程序将markdown内容转为pdf并下载

要在微信小程序中将Markdown内容转换为PDF并下载,您可以使用以下方法: 方法一:使用第三方API服务 选择第三方API服务: 可以选择像 Pandoc、Markdown-PDF 或 PDFShift 这样的服务,将Markdown转换为PDF。例如,PDFShift 提供了一个API接口,可以将Markdown内容转换为PDF格式…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

排序算法总结(C++)

目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指&#xff1a;同样大小的样本 **&#xff08;同样大小的数据&#xff09;**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...

HubSpot推出与ChatGPT的深度集成引发兴奋与担忧

上周三&#xff0c;HubSpot宣布已构建与ChatGPT的深度集成&#xff0c;这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋&#xff0c;但同时也存在一些关于数据安全的担忧。 许多网络声音声称&#xff0c;这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...

02.运算符

目录 什么是运算符 算术运算符 1.基本四则运算符 2.增量运算符 3.自增/自减运算符 关系运算符 逻辑运算符 &&&#xff1a;逻辑与 ||&#xff1a;逻辑或 &#xff01;&#xff1a;逻辑非 短路求值 位运算符 按位与&&#xff1a; 按位或 | 按位取反~ …...

[USACO23FEB] Bakery S

题目描述 Bessie 开了一家面包店! 在她的面包店里&#xff0c;Bessie 有一个烤箱&#xff0c;可以在 t C t_C tC​ 的时间内生产一块饼干或在 t M t_M tM​ 单位时间内生产一块松糕。 ( 1 ≤ t C , t M ≤ 10 9 ) (1 \le t_C,t_M \le 10^9) (1≤tC​,tM​≤109)。由于空间…...

轻量级Docker管理工具Docker Switchboard

简介 什么是 Docker Switchboard &#xff1f; Docker Switchboard 是一个轻量级的 Web 应用程序&#xff0c;用于管理 Docker 容器。它提供了一个干净、用户友好的界面来启动、停止和监控主机上运行的容器&#xff0c;使其成为本地开发、家庭实验室或小型服务器设置的理想选择…...

从0开始学习R语言--Day17--Cox回归

Cox回归 在用医疗数据作分析时&#xff0c;最常见的是去预测某类病的患者的死亡率或预测他们的结局。但是我们得到的病人数据&#xff0c;往往会有很多的协变量&#xff0c;即使我们通过计算来减少指标对结果的影响&#xff0c;我们的数据中依然会有很多的协变量&#xff0c;且…...