首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏yukong的小专栏

    【java并发编程实战3】解密volatilevolatile的使用场景

    重排序与as if serial的关系 volatile的特点 volatile的内存语义 volatile的使用场景 重排序与as if serial的关系 重排序值得是编译器与处理器为了优化程序的性能 这里我先介绍一下volatile关键词的特点,接下来我们将会从它的内存语义来解释,为什么它会具有以上的特点,以及它使用的场景。 如果一个场景存在对volatile变量的读写场景,在读线程B读一个volatile变量后,,写线程A在写这个volatile变量前所有的所见的共享变量的值都将会立即变得对读线程B可见。 不会发生重排序,即3happen before 4 根据happen-before原则,volatile写happen before volatile读,即是 2happen before 3。 1535969126569.png volatile的使用场景 标记变量,也就是上面的flag使用 double check 单例模式中 下面我们看看double check的使用 class Singleton

    45620发布于 2018-10-09
  • 3D古城场景角色碰撞优化的实战指南》

    在负责某开放世界3A项目“燕云古城废墟”场景开发时,我们遭遇了角色与场景物理交互的核心难题:玩家操控角色在断墙、石阶、陶罐间移动时,频繁出现“穿模”与“帧率骤降”—比如在西城门断墙区,角色翻越半米高的断墙时 可破坏物体的实时物理计算是另一大性能瓶颈,尤其是场景中密集分布的陶罐(南大街、东市等区域单区域30-50个,全场景共200+个)。 首先,我们在离线阶段用Blender结合PhysX破碎工具,为陶罐预生成3套差异化破碎模型:轻度破碎(5-8片碎片,保留陶罐主体轮廓,适用于轻微碰撞)、中度破碎(9-12片,主体分裂为2-3块,适用于正常踩踏 我们还做了极端场景测试:让角色在密集动态物体区域(20个石碾、8个闸门)快速穿梭、推动物体,帧率稳定在57-60帧,未出现之前的“卡顿簇发”现象,甚至在同时推动3个石碾时,CPU占用率仅上升4%,性能表现远超预期 移动端适配是开放世界3D开发的重点难点,古城废墟场景的物理碰撞在中端机型(如天玑8100、骁龙778G)上初期表现不佳:角色走在南大街石阶上时,因石阶碰撞体精度过高(面数150+,包含台阶边缘的磨损细节

    27510编辑于 2025-10-20
  • 来自专栏监控

    Linux的3种特殊权限场景实战:SUID、SGID、SBIT

    3种特殊权限 在Linux系统中,有3种特殊权限,它们分别是Setuid(SUID)、Setgid(SGID) 和 Sticky Bit。 场景实战 假设有这样一个二进制程序/usr/bin/passctl,这个程序只能被root用户执行,而我们希望普通用户也能执行该程序,但是又不想将该程序赋予root用户以外的用户特权。 为了实现这个场景,可以使用 Setgid 权限来配置 "webapp" 目录。 conf.json  rm: cannot remove ‘conf.json’: Operation not permitted [root@workhost shared_directory]#  这个场景实战演示了如何使用

    3.9K00编辑于 2023-04-10
  • 来自专栏全栈程序员必看

    unity3D场景_3D夜晚场景

    在学习阿发你好的网课过程中,学习完Unity的2D课程后深有感触,决定将3D学习过程一步步记录下来,也方便日后查询。 创建3D项目 Step1:在UnityHub中新建3D项目 Step2:将页面调整为2×3布局(项目中通常使用2×3) 新建项目 选择 window -> layouts -> 2 by 3 选择 window->General->Console 调出控制台 认识3D场景 天空盒skybox:上有蓝天,下有深渊,在计算机图形学学习过程中就有所涉及。 场景中还有什么? 方向标识:3D视图导航器Gizmos; 坐标网格Grid,标识y=0坐标平面(一般不作调整); 摄像机与光源。 3D视图导航 1、移动视图:按Q选择手型工具或者直接使用鼠标中键 2、旋转视图:ALT+鼠标左键 ​ 鼠标右键,摇摆 3、缩放:滚轮 或 ALT+右键 建立方向感 由于Unity中没有规定方向,为方便建立方向感

    73230编辑于 2022-09-22
  • 来自专栏MongoDB中文社区

    MongoDB Aggregate 业务场景实战

    实际在业务场景中,适当的运用聚合往往会带来事半功倍的效果。 针对不同的业务需求,我们一般会涉及到以下场景: 基础对象查询 表 join 查询 分类统计 嵌套对象排序 ... 说到了常⻅的应用场景,下面也介绍一下我们的系统业务数据模型: 机会数据模型 ? 3. 在CRM系统中,作为一名销售,经常需要拜访客户,拜访完成之后需要在机会中填写相应的跟进记录,所以对于他们来说需要完整的客户地址信息,用于日后的拜访使用。 3 技 巧 我们在使用聚合管道满足我们的业务场景的同时,发现有很多小的技巧能够帮助我们优化数据查询,下面给大家列举一下: 管道操作符之$ifNull 定义:如果表达式计算为非空值,则计算表达式并返回表达式的值 3.

    2.5K40发布于 2018-12-27
  • 来自专栏机器学习

    AIGC 办公场景实战教程

    这里有几个适用于 办公场景 的 AIGC 练习项目,适合普通程序员掌握 AIGC 相关技术,并快速提升办公效率。1. AI 助理:智能邮件回复生成技术点:GPT(文本生成)、OpenAI API、Streamlit 适用场景:自动生成邮件回复,提高工作效率。 whisperimport openai# 语音转文字model = whisper.load_model("base")result = model.transcribe("meeting_audio.mp3" 3. AI Excel 数据分析助手技术点:Pandas(数据分析)、GPT(自然语言数据查询)、Streamlit 适用场景:自动分析 Excel 数据并回答用户问题。 总结这些 AIGC 练习项目都能 直接应用到办公场景,帮助程序员掌握 AI 生成技术并提升效率:项目主要技术适用场景进阶方向AI 邮件助手GPT + Streamlit生成邮件回复语音输入、自动发送邮件

    87000编辑于 2025-03-25
  • 来自专栏Python3爬虫100例教程

    ⛳️ 易 实战场景

    @ 目录 ⛳️ 易 实战场景 车 ⛳️ 易 实战编码 车 ⛳️ 易 实战场景 车 本次字体反爬案例对应的是【易车】点评频道,该站点使用了字体反爬技术,并且是中文字符反爬,可以重点研究下。 ⛳️ 易 实战编码 车 有了多篇字体反爬的经验,我们很容易发现本次的目标站点使用了固定的字体文件,名称为 yc-ft.woff,其中包含了 473 个特殊汉字。 font) font_map = font['cmap'].getBestCmap() print(font_map) 网页响应的源码格式如下所示: 3d0 ;车也 其中 3d0; 就是对应的字符,然后 e3d0 对应到字体矢量图中,对应的是 提 字。

    52820编辑于 2022-06-12
  • 来自专栏xiaosen

    机器学习多场景实战

    从智能推荐系统个性化推送你可能喜爱的电影和商品,到金融风控领域精准识别欺诈交易;每一个应用场景都是机器学习技术多维度、深层次实战的精彩演绎,我们通过一些小案例对业务进行了解~ 什么是数据指标 数据指标概念 转化率:计算方法与具体业务场景有关 淘宝店铺,转化率=购买产品的人数/所有到达店铺的人数 在广告业务中,广告转化率=点击广告进入推广网站的人数/看到广告的人数。 a1 b1 c1 d1 2 a2 b2 c2 d2 3 a3 b3 c3 d3 0 a4 b4 c4 d4 1 a5 b5 a3 b3 c3 d3 a7 b7 c7 d7 df1.append(df2) A B C D 0 a0 b0 c0 d0 1 a1 b1 c1 d1 2 a2 b2 c2 d2 3 a3 b3 c3 d3 0 a4 b4 c4 d4 1 a5 b5 c5 d5 2 a6 b6 c6 d6 3 a7 b7 c7

    46610编辑于 2024-06-06
  • 来自专栏运维有术

    OpenSpec 最佳实战3 步工作流 × 3场景,新老项目通用

    2026 年「术哥无界」系列实战文档 X 篇原创计划 第 67 篇,OpenSpec 实战「2026」系列第 10 篇 大家好,欢迎来到 术哥无界 | ShugeX | 运维有术。 图 1:OpenSpec 3 步工作流 × 3场景概览 你用 AI 编码助手写功能,有没有遇到过这种情况:需求描述了一通,AI 理解成了另一个意思,写出来的代码完全不是你要的。 每个场景的侧重点不同,但底层的三步流程是一样的。 3. 场景一:新项目从零开始 图 4:新项目从零开始的完整工作流 新项目的特点是:没有历史包袱,规范从零搭建,每次功能迭代都会让系统规范更加完整。 实战技巧与常见坑 6.1 格式陷阱:Scenario 必须用 #### 这是新用户踩得很多的一个坑。 本文中的三个场景实战测试用的是 MiniMax M2.7,生成 spec 和 Delta Spec 的表现都不错,日常场景足够用。 如果只是小功能的 spec,普通模型也能胜任。 7.

    1.7K10编辑于 2026-04-01
  • 来自专栏Python3爬虫100例教程

    ⛳️ Python 爬虫实战场景,人

    ⛳️ Python 爬虫实战场景,人 本次要采集的站点是 double 人车,目标站点如下所示: www.renrenche.com/cn/dazhong/? ⛳️ 实战编码,人 随机下载一个字体文件到本地,然后打开之后,查看编码,使用的工具是 FontCreator,打开之后,可以看到索引和文字的对应关系如下。 plog_id=6aa04cde5309dd233f85bd47a996c423') els = etree.HTML(res.text) class_name = els.xpath('//h3/@class plog_id=6aa04cde5309dd233f85bd47a996c423') els = etree.HTML(res.text) class_name = els.xpath('//h3/@class

    55650编辑于 2022-05-18
  • 来自专栏高级开发进阶

    【Zookeeper典型使用场景实战

    Zookeeper典型使用场景实战 Zookeeper分布式锁实战 Zookeeper 分布式锁加锁原理 如上实现方式在并发问题比较严重的情况下,性能会下降的比较厉害,主要原因是,所有的连接都在对同一个节点进行监听 举个例子 1、读写并发不一致 2、双写不一致情况 Zookeeper 共享锁实现原理 注册中心实战 注册中心场景分析: 在分布式服务体系结构比较简单的场景下,我们的服务可能是这样的 现在 当然我们可以再前面加一个服务代理,比如nginx做反向代理, 如下: 如果我们是如下场景呢? Spring Cloud 生态也提供了Zookeeper注册中心的实现,这个项目叫 Spring Cloud Zookeeper 下面我们来进行实战。 1.创建user-center 项目 同样的方式创建一个 product-center 2.解压项目用idea打开,用maven导入项目 同样的方式引入product-center 项目 3.

    35320编辑于 2022-09-29
  • oodAgent 场景引擎 招聘系统实战

    让我们看看两者的对比:❌ 传统开发需求分析2-3周系统设计2-3周编码开发4-6周测试上线2-3周总计10-15周✅ 场景开发场景定义1-2天技能组装2-3天配置调试1-2天上线运行1天总计1周内二、场景技能是什么 场景技能(Scene Skill)是 Ooder SceneEngine 的核心概念,它将业务场景封装为可复用的能力单元: 场景技能 = 业务场景 + 能力集合 + 知识库 + 智能决策业务场景:招聘、 DECISION决策规则意图路由、能力选择TRANSFORM转换规则数据格式化、字段映射VALIDATION验证规则参数校验、权限检查ROUTING路由规则多分支决策FALLBACK降级规则异常处理四、实战 李四 - 4年Java经验,有微服务项目经验3. 王五 - 3年Java经验,全栈开发能力"六、最佳实践 知识库设计原则分层管理:通用知识、专业模块、场景知识分离权限控制:不同层级设置不同访问权限质量监控:定期检查知识库数据质量版本管理:知识更新保留历史版本

    18010编辑于 2026-03-07
  • 来自专栏前端精读评论

    可视化搭建 - 场景实战

    接下来用实战来说明该可视化搭建框架是否好用,以下几条原则需要始终贯穿在下面每个实战场景中: 复杂的业务场景,背后使用的框架 API 是简单的。 底层 API 并不为业务场景特殊编写,而是具有很强的抽象性,很容易挖掘出其他业务场景的用法。 所有场景都是基于有限的几条基础规则实现,即背后实现的复杂度不随着业务场景复杂度提升而提升。 实现任意协议 我们也许为了进一步抽象,或对指定业务场景降低配置门槛,在组件树拓展一些额外的 json 结构协议做一些特定功能。 总结 本文我们总结了三个场景实战: 利用 treeLike 结构在组件内渲染任意数量的子组件实例,如 tabs 或富文本。 利用组件联动的 API,实现筛选、联动以及上卷下钻。 讨论地址是:精读《可视化搭建 - 场景实战》· Issue #485 · dt-fe/weekly

    42360编辑于 2023-09-01
  • 来自专栏高级开发进阶

    【Zookeeper典型使用场景实战

    Zookeeper典型使用场景实战 Zookeeper分布式锁实战 Zookeeper 分布式锁加锁原理 如上实现方式在并发问题比较严重的情况下,性能会下降的比较厉害,主要原因是,所有的连接都在对同一个节点进行监听 举个例子 1、读写并发不一致 2、双写不一致情况 Zookeeper 共享锁实现原理 注册中心实战 注册中心场景分析: 在分布式服务体系结构比较简单的场景下,我们的服务可能是这样的 现在 当然我们可以再前面加一个服务代理,比如nginx做反向代理, 如下: 如果我们是如下场景呢? Spring Cloud 生态也提供了Zookeeper注册中心的实现,这个项目叫 Spring Cloud Zookeeper 下面我们来进行实战。 1.创建user-center 项目 同样的方式创建一个 product-center 2.解压项目用idea打开,用maven导入项目 同样的方式引入product-center 项目 3.

    43280编辑于 2022-03-07
  • 来自专栏golang云原生new

    Statefulset 实战 3

    Statefulset 会立马创建一个和刚才少的那个一模一样的 pod 通过我们查看 pod 的名称和索引值是我们所期望的,并且是 curl 访问 pod 的提供的接口,获取的相应数据也是我们所期望的 修改副本个数为 3 kubectl edit statefulset sta-kubia kubectl get po | grep sta kubectl get pv kubectl get pvc 副本数修改为 3 curl 命令去请求一下,结果会如你所愿 将副本数修改回 3 那么现在我们再进行扩容,Statefulset 是否会将刚才删除的 2 个 pod全部恢复回来呢? pod 一模一样,标识,状态等等完全一致,新建的 pod sta-kubia-1 仍然直接使用原来的 卷 1 下图是表示修改 Statefulset 的 replicas 进行扩缩容 同样也是分 3 步骤 环境中 repilicas 副本数 为 3 ,通过编辑 Statefulset ,将副本数修改为 1,此时 k8s 会从最高索引,由大到小的删除,最终剩下 1 个 pod ,也就是 sta-kubia

    30410编辑于 2023-09-01
  • 来自专栏阿沐教你学知识

    面试系列-3 限流场景实践

    今天呢,我们就不聊redis面试系列,我们一起来聊一聊限流操作以及使用场景。很奇怪哈,为啥突然转变画风了,之前一篇文章中提到 redis的限流操作,并没有实际给小伙伴们演示以及场景的使用演练。 当然想写这篇文章并不是空穴来风,实际的面试场景中是会被面试官问及到。 3 这个面试官肯定在搞我 目前限流常用的方式:计数器、滑动窗口、漏桶算法、令牌桶算法四种方案,下面我们逐一讲解下(ps:在之前公司已经实践过)。 $tokens); if ($result) return $num; return 0; } 面试官:“不赖不赖,这还说是凭着记忆讲解呢,感觉像是实战过的样子,给你点个赞。 说实话:网络上基本上都有很多案例,大同小异;希望能通过这种慢慢迭代引入的方式解开限流场景实战

    91010发布于 2021-05-28
  • 来自专栏橙光笔记

    Three.js教程(3):场景

    : custom document.body.appendChild( stats.dom ); gui.add(obj, 'x', -3, 3); gui.add(obj, 'y', - 3, 3); gui.add(obj, 'z', -3, 3); gui.add(obj, 'rotateX', 0, 360); gui.add(obj, 'rotateY', 0, 360 场景的属性和方法 创建场景很简单: var scene = new THREE.Scene(); 对于他的属性和方法也不是很多: 类型 名称 描述 默认值 属性 fog 场景中雾的效果 null 属性 () 把场景转换为JSON对象,可以供Three.js导入场景使用 - 方法 dispose() 清楚缓存数据 - THREE.Scene的属性并不多,你可能会问,之前把Mesh添加到Scene中使用到了一个 确实场景是有这个方法的,更准确的说这个方法是来自它的父类THREE.Object3D的,它是好多Three.js对象的直接或间接父类,所以了解它的属性和方法非常有必要,由于篇幅有限,这里就不再叙述了,你可以在这里看一看

    4.5K22发布于 2020-10-17
  • 来自专栏逍遥剑客的游戏开发

    Nebula3场景管理

    N3场景管理最为核心的一个类是GrphicsServer, 它包含一些"stage"和"View". Stage把图形实体(模型, 摄像机, 灯光)进行分类渲染. N3会提供了一些不同用途的Stage子类, 但你也可以根据程序需要自己来实现可见性查询机制. N3 画个东西真简单, 想画个模型, 创建出来设置一下位置扔给Stage就好了 this->model = ModelEntity::Create();   this->model->SetTransform 再往场景里扔个灯就好了: // attach a light entity  matrix44 lightTransform = matrix44::multiply(matrix44::scaling

    50460发布于 2018-05-23
  • 来自专栏全栈程序员必看

    unity3d场景制作

    这是最后的成果 以上图片资源均为资源商店免费获取 制作地形的方法 1创建相邻地形(主要用于地形的扩大) 2绘制地形(主要用于地貌的设置) 3绘制树(用于树木的绘制) 4绘制细节 (用于小草或小花的设置) 5地形设置(用于整体设置) 绘制的主要方面为2、3、4点 第2点: 不同地形是有不同纹理形成,在编辑地形层中选择自己喜欢的地形。 注意:法线贴图是地形纹理的进一步深化,可以加强地形的真实感 第3点 绘制树与绘制地形基本相同 第4点 绘制细节与前两者不同的是,除了细节纹理外,还有细节网格 对与地形的设计非常需要学习

    51520编辑于 2022-08-12
  • 来自专栏vivo互联网技术

    密集计算场景下的 JNI 实战

    在笔者经过艰难的踩坑之后,终于将 JNI 运用到了项目实战,本文笔者将简单介绍 JNI 技术,并介绍简单的原理和性能分析。通过分享我们的实践过程,带各位读者体验 JNI 技术的应用。 或许还有别的场景,可以使用到 JNI,可以看到 JNI 技术有着非常好的应用潜力。 三、JNI 实战:探究踩坑的全过程 我们的业务中存在一个计算密集型场景,需要从本地加载数据文件进行模型推理。 3.1 场景准备 实战就不从 Hello world 开始了,我们直接敲定场景,思考该让 C++ 实现哪部分逻辑。 resources # 存放 lib 的资源目录 -/test --/java ----ModelComputerTest.java # 测试类 pom.xml # maven pom 3.3 实战过程 踩坑3:服务器启动时报java.lang.UnsatisfiedLinkError 异常 又是这个异常,前文已经介绍了一种解决方案,但在实际应用中仍然频繁出现,比如: 运行环境有问题(比如在 linux

    89820编辑于 2022-08-23
领券