Unity3D error: ArgumentException: Key duplication when adding: XXX

在使用 Unity 编译时遇到 ArgumentException 错误,原因是并发请求导致关键字重复添加。解决方案是在 C# 脚本中正确初始化关键字,避免此类问题。参考链接提供了解决问题的具体方法。

今天使用 Unity 编译出现一个错误, 最后解决了,做个记录。

error:

ArgumentException: Key duplication when adding: XXX
System.Collections.Hashtable.PutImpl (System.Object key, System.Object value, Boolean overwrite) (at/Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections/Hashtable.cs:831)
System.Collections.Hashtable.Add (System.Object key, System.Object value) (at/Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections/Hashtable.cs:474)

如图:
error

出现这种情况的原因是,由两个并发请求引起的关键字重复添加错误。

(C#脚本)

// 这在定义的时候 直接初始化,就会出现这种情况。
private static Hashtable hash = new Hashtable(); 
hash.Add("AA",AA);
hash.Add("BB",BB);
hash.Add("CC",CC);

// 应该这样定义,定义hash 初始化为 null

private static Hashtable hash = nulll;

// 在调用之前,再初始化:
hash = new Hashtable();     // 每添加一行数据 ,初始化一次
hash.Add("AA",AA);
hash.Add("BB",BB);
hash.Add("CC",CC);

这样就可以解决这个错误了。(~ ̄▽ ̄)~

参考资料:
http://mono.1490590.n4.nabble.com/System-ArgumentException-Key-duplication-when-adding-httpModules-td4649636.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值