提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:吴园园|2019-10-28 13:52:45.933|阅读 3245 次
概述:本系列教程为Clion入门教程,本文总结了一些有用的技术,可以用来提高大型项目的CLion性能。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
CLion是一款专为开发C及C++所设计的跨平台IDE。它是以IntelliJ为基础设计的,包含了许多智能功能来提高开发人员的生产力。这种强大的IDE帮助开发人员在Linux、OS X和Windows上来开发C/C++,同时它还使用智能编辑器来提高代码质量、自动代码重构并且深度整合CMake编译系统,从而提高开发人员的工作效率。
CLion现已更新至2019.2版本,新版本为嵌入式开发人员提供了更多帮助,并提高了几个重要方面的一般调试能力。编辑器现在具有参数名称提示,并且它具有改进的代码分析功能,为“未使用的包含”带回更新的检查。点击查看更新详情!
增加内存堆
启用内存指示灯
要检查性能下降是否是由于堆内存不足引起的,请在“设置/首选项” |“设置”中启用“ 显示内存指示符”选项。外观与行为| 外观。默认情况下,JVM和Clangd内存指示器都将显示在右下角:
调整-Xmx
要增加内存堆,请修改相应的JVM选项-Xmx:
转到帮助| 编辑自定义VM选项 -此操作将在IDE config目录中创建.vmoptions文件的副本,然后在编辑器中将其打开。
设置-Xmx更高的值。例如-Xmx4096m对于4 GB的值,而不是默认的2 GB。
重新启动CLion。
如果可用的堆内存量小于最大堆大小的5%,CLion也会警告您:
单击配置以-Xmx在“ 内存设置”对话框中进行编辑:
加快代码分析
过滤器的检查清单
动态代码分析是CLion中性能最消耗的过程之一。要减轻它的负担,请在“设置/首选项” |“设置”中缩短检查清单。
特别是,请考虑禁用“ 数据流分析”组,然后禁用“ 常规”。可简化的声明检查:
您将始终能够使用“ 代码| 在不影响编辑器的情况下,检查Code命令并在单独的工具窗口中浏览结果。另外,您可以通过设置“ 提交前”选项来推迟代码分析(以及即时重构)直到提交。
对于文件调分析
要更改当前打开文件的代码分析级别,请单击状态栏上的Hector图标或运行Code | 配置当前文件分析 Ctrl+Shift+Alt+H:
将滑块移到可用位置之一:
没有一个可以完全关闭突出显示;
语法,只显示语法问题;
检查(默认)以显示语法问题和检查问题。
切换省电模式
作为单独配置单个检查或文件的另一种选择,请尝试“ 省电模式”。它禁用了整个IDE的所有检查和其他耗时的后台任务。
要启用节电模式,请在Hector弹出窗口中设置相应的复选框(请参见上面的屏幕截图),或调用File | 省电模式。
检查基于Clangd引擎
CLion包含一个互补的基于Clangd的语言引擎,默认情况下启用。当前,它可用于错误/警告注释,某些导航任务,通过ClangFormat进行代码格式化以及带有快速修复的代码突出显示。
在大多数情况下,基于Clangd的引擎比内置引擎的运行速度更快(有时会提供更准确的结果)。但是,并非所有操作都使用它。例如,Clangd提供了快速修复的位置,而修复本身是由CLion自己的引擎执行的。或者,“ 查找用法”使用Clangd在编辑器中当前打开的文件以及CLion自己的引擎中搜索所有其他用法。
我们建议您在调查性能问题时考虑到Clangd引擎的特点。使用设置/首选项| 语言和框架| C / C ++ | 尝试试验引擎设置,看看它们是否影响某些任务的性能。
加快索引
排除目录和文件类型
默认情况下,CLion索引CMakeLists.txt中列出的所有目录(源和include_directories路径)以进行正确解析。同时,您的项目可能包含带有二进制文件,日志或构建构件的文件夹,这不会影响CLion的代码洞察力。同样,某些文件夹的索引由于其大小或位置而可能过于昂贵。因此,手动排除此类文件夹是合理的:在项目树中的目录上单击鼠标右键,然后选择“将目录标记为”。
由于CLion的排除文件中的符号仍未完成,因此以下功能不适用于此类文件:代码完成和自动导入(include_directories在CMakeLists.txt中用排除目录标记的情况除外),代码生成,查找在路径中(当前打开文件的范围除外),导航和重构。
从索引中消除日志或生成的数据之类的文件的另一种方法是在“设置” /“首选项” |“设置”中按文件类型排除它们 编辑器 档案类型:
较小的CMake子项目的工作
解析文件的范围由加载的CMake脚本确定。因此,如果您的项目被分成几个子目录,每个子目录中都有独立的CMakeLists.txt,则可以分别加载较小的子项目(为此,请在sub-CMakeLists.txt上运行Load CMake project):
当您只需要探索大项目的一部分时,另一种替代方法是创建一个编译数据库,将其缩减为感兴趣的部分,然后在CLion中作为项目打开。
避免使用_CLION_IDE__macro进行繁琐的解析
复杂的预处理器宏的解析过程中可能会发生IDE冻结。要从代码中消除此类有问题的定义,请使用__CLION_IDE__macro将其替换为一些虚拟的定义:
该macro仅影响解析,并且在生成或运行代码时未定义。
=====================================================
更多关于CLion的教程、资源敬请关注我们即将推出的后续教程哦~
想要购买Clion正版授权的朋友欢迎。
关注下方微信公众号吗,及时获取产品最新消息和最新资讯
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@capbkgr.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢