首页 文章 精选 留言 我的

精选列表

搜索[配置],共10000篇文章
优秀的个人博客,低调大师

iOS组件化开发一本地环境配置(一)

首先我们要使用pod支持组件化开发 解决CocoaPods慢的方案(gem和pod repo换源) gem换源$ gem sources --remove https://rubygems.org/ # 移除默认源$ gem sources -a https://gems.ruby-china.org/ # 添加Ruby China镜像$ gem sources -l确保只有gems.ruby-china.org源 pod repo换源$ pod repo默认是GitHub源 master- Type: git (master)- URL: https://github.com/CocoaPods/Specs.git- Path: /Users/cheng/.cocoapods/repos/master1 repo我们把它换成Coding.net源 $ pod repo remove master$ pod repo add master https://git.coding.net/CocoaPods/Specs.git$ pod repo update如果执行pod repo add出现错误 错误那么使用以下办法 $ git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master$ pod repo update另外,如果Podfile文件中有 source 'https://github.com/CocoaPods/Specs.git'也需要把它换成repo的源,否则依然是使用GitHub源上面的步骤都完成后,即可使用 $ pod install$ pod update pod searchAFNetworking 出现错误: 1、what did you do ? 2、Unable to find a pod with name, author, summary, or descriptionmatching 等错误 删除~/Library/Caches/CocoaPods目录下的search_index.json文件 pod setup成功后,依然不能pod search,是因为之前你执行pod search生成了search_index.json,此时需要删掉。 终端输入:rm ~/Library/Caches/CocoaPods/search_index.json 删除成功后,再执行pod search。 pod search MobileKit [!] An unexpected version directory `Classes` was encountered for the `/Users/zhangpeng/.cocoapods/repos/gitee-peter_zhang-mobilekit/MobileKit` Pod in the `MobileKit` repository. $ cd /Users/zhangpeng/.cocoapods/repos/ $ ls master gitee-peter_zhang-mobilekit. MobileKitSpec 删除多余的

优秀的个人博客,低调大师

JVM学习系列:了解JVM options参数配置 & 看懂GC日志

摘要 java有内置的垃圾回收器做内存回收,通过强引用、软引用、弱引用和虚引用给对象做"标记",告诉垃圾回收器在什么时机回收什么内存。我先通过JVM options参数探测JVM内部不同垃圾回收的策略。 JVM初始参数 minimum size of heap:10MB maximum size of heap:20MB new size of heap:5MB -Xms10m -Xmx20m -Xmn5m -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -XX:+PrintGCDateStamps -XX:+PrintGCDetails -Xloggc:./gclogs JVM初始内存分配: 截图是以空main方法运行后JVM的内存使用概要。新生代内存大小为5MB,PSYoungGen区可用内存大小为4608K,eden、from和to区分别为4MB、512K和512K;老年代可用内存大小为5120K。 所需分配的内存小于新生代大小 // ONE_MB_SIZE = 1024 * 1024 byte[] allocate1 = new byte[ONE_MB_SIZE]; 创建allocate1数组在eden区分配了4096KB*0.25=1MB内存。 所需分配的内存大于新生代大小: byte[] allocate1 = new byte[3 * ONE_MB_SIZE]; JVM将3MB的对象放到了老年代:为什么JVM不GC然后在新生代上分配3MB空间?这和内存分配与回收策略有关: * 对象优先在eden区分配 * 大对象直接进入老年代 * 长时间还活着的对象进入老年代 即: 新生代初始36%的内存空间没有可GC的空间。 新生代的eden+from剩余3.1MB,足以提供3MB空间,但内存按page分配(4K/page),如果在新生代分配会使得对象分开保存在不同的区(eden和from),是否存储对象的内存只能在一个区里,这点待验证。 垃圾收集器为保吞吐量,当新生代无足够内存时,把对象分配到了老年代。 GC/Full GC 初始我们给heap分配了最大20MB的内存空间,下面看下GC的场景。此时发生了GC和Full GC:刨除初始被占用的36%的eden区,20MB的heap大小不满足内存分配要求,触发了java.lang.OutOfMemoryError: Java heap space错误。 此时将allocate1=null,触发GC,heap刚好可以完成内存分配。此时是在释放了eden空间后,转移到老年代进行内存分配: 看懂GC日志 To be continued...

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

用户登录
用户注册