我想将JSON字符串解析为Google App Engine(python)下的对象.您有什么推荐的吗?编码/字符串化的东西也会很好.您推荐内置的内容,还是我必须在我的应用中包含的库?它安全吗?谢谢.
我有一些C#代码使用CSharpCodeProvider.CompileAssemblyFromSource在内存中创建一个程序集.在对程序集进行垃圾回收之后,我的应用程序使用的内存比创建程序集之前的内存要多.我的代码在ASP.NET Web应用程序中,但我在WinForm中重复了这个问题.我正在使用System.GC.GetTotalMemory(true)和Red Gate ANTS Memory Profiler来测量增长(使用示例代码大约600个字节).
从我的搜索开始,听起来泄漏来自新类型的创建,而不是来自我所持有的任何对象.我发现的一些网页提到了有关AppDomain的一些内容,但我不明白.有人可以解释这里发生了什么以及如何解决它?
以下是泄漏示例代码:
private void leak()
{
CSharpCodeProvider codeProvider = new CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateInMemory = true;
parameters.GenerateExecutable = false;
parameters.ReferencedAssemblies.Add("system.dll");
string sourceCode = "using System;\r\n";
sourceCode += "public class HelloWord {\r\n";
sourceCode += " public HelloWord() {\r\n";
sourceCode += " Console.WriteLine(\"hello world\");\r\n";
sourceCode += " }\r\n";
sourceCode += "}\r\n";
CompilerResults results = codeProvider.CompileAssemblyFromSource(parameters, sourceCode);
Assembly assembly = null;
if (!results.Errors.HasErrors)
{
assembly = results.CompiledAssembly;
}
}
Run Code Online (Sandbox Code Playgroud)
更新1:此问题可能相关:动态加载和卸载使用CSharpCodeProvider生成的all
更新2:尝试更多地了解应用程序域,我发现: …
c# memory-leaks appdomain marshalling compileassemblyfromsource
我使用以下代码在Firefox 15和Chrome 21上遇到问题:
setInterval(function () { console.log('test') }, 300000000000)
Run Code Online (Sandbox Code Playgroud)
在两个浏览器上,该功能立即运行重复非常快.当然,这是一个很大的数字(代表从现在开始大约10年),但我不认为它被视为微小或负数.我没有看到任何文档中允许的最大延迟.有谁知道是否有标准的最大值,或者这只是浏览器有趣吗?
我一直在寻找一种存储给定AES密钥的方法,以便无法检索它,但它仍然可以用于加密和解密(使用C#).我认为可以在这里找到非对称密钥存储的等价物,但我正在寻找可用于对称加密的东西.它是否以托管形式存在(pre .Net 4)?
c# ×2
appdomain ×1
encryption ×1
javascript ×1
json ×1
marshalling ×1
memory-leaks ×1
python ×1
security ×1
setinterval ×1
windows ×1