程序设计

专业和发烧友程序员的问答

4
如何处理AccessViolationException
我正在从.net应用程序中使用COM对象(MODI)。我正在调用的方法将引发System.AccessViolationException,它会被Visual Studio拦截。奇怪的是,我将调用包裹在一个try捕获中,该捕获具有用于AccessViolationException,COMException和其他所有内容的处理程序,但是当Visual Studio(2010)拦截AccessViolationException时,调试器会中断方法调用(doc.OCR),如果我单步执行,它将继续到下一行而不是进入catch块。此外,如果我在Visual Studio之外运行此程序,则应用程序将崩溃。如何处理在COM对象中引发的异常? MODI.Document doc = new MODI.Document(); try { doc.Create(sFileName); try { doc.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, false, false); sText = doc.Images[0].Layout.Text; } catch (System.AccessViolationException ex) { //MODI seems to get access violations for some reason, but is still able to return the OCR text. sText = doc.Images[0].Layout.Text; } catch (System.Runtime.InteropServices.COMException ex) …
183 c#  .net  exception  com  modi 

13
以任何方式退出bash脚本,但不退出终端
当我exit在shell脚本中使用command时,该脚本将终止终端(提示)。有什么方法可以终止脚本然后留在终端中? 我的脚本run.sh有望通过直接获取或从其他脚本获取来执行。 编辑:更具体,有两个脚本run2.sh作为 ... . run.sh echo "place A" ... 和run.sh作为 ... exit ... 当我通过运行它时. run2.sh,如果它在的exit代码行中命中run.sh,我希望它停在终端并停留在那里。但是使用exit,整个终端将关闭。 PS:我尝试使用return,但是echo代码行仍将执行...。
183 linux  bash 

9
Java SE 8是否具有对或元组?
我正在玩Java SE 8中的惰性函数操作,我想要一个对对/元组map的索引,然后基于第二个元素,最后只输出索引。i(i, value[i])filtervalue[i] 我还必须忍受这一点吗:Java中的C ++ Pair <L,R>等效项是什么?在lambdas和stream的大胆新时代中? 更新:我提供了一个相当简化的示例,该示例在以下答案之一中提供了@dkatzel提供的简洁解决方案。但是,它不能一概而论。因此,让我添加一个更一般的示例: package com.example.test; import java.util.ArrayList; import java.util.stream.IntStream; public class Main { public static void main(String[] args) { boolean [][] directed_acyclic_graph = new boolean[][]{ {false, true, false, true, false, true}, {false, false, false, true, false, true}, {false, false, false, true, false, true}, {false, …

10
使用Python进行网页抓取[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使它成为Stack Overflow 的主题。 10个月前关闭。 改善这个问题 我想从网站上获取每天的日出/日落时间。是否可以使用Python抓取Web内容?使用什么模块?有没有可用的教程?



4
事件处理程序是否阻止垃圾回收的发生?
如果我有以下代码: MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass = null; pClass会被垃圾回收吗?还是会在事件发生时仍在触发事件呢?我是否需要执行以下操作才能进行垃圾回收? MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass.MyEvent -= MyFunction; pClass = null;

3
GHC可以可靠地执行哪些优化?
GHC可以执行很多优化,但是我不知道它们全都有,也不知道它们在多大程度上会在什么情况下执行。 我的问题是:我希望每次或几乎都会应用哪些转换?如果我查看一段要经常执行(评估)的代码,而我的第一个念头是“嗯,也许我应该优化它”,在这种情况下,我的第二个念头应该是:“甚至不要考虑它, GHC收到了这个?” 我正在阅读论文《流融合:从列表到流再到什么都没有》,而他们使用的将列表处理重写为另一种形式的技术对我来说是新颖的,GHC的常规优化然后可以将其可靠地优化为简单的循环。我如何知道自己的程序何时可以进行这种优化? 《 GHC手册》中有一些信息,但这只是回答问题的一部分。 编辑:我开始赏金。我想要的是较低级转换的列表,例如lambda / let / case-floating,type / constructor / function参数专门化,严格性分析和拆箱,worker / wrapper以及我遗漏的其他重要GHC所做的其他事情,以及输入和输出代码的说明和示例,以及理想情况下总效果超过其各个部分之和的情况的说明。理想情况下,提到何时不进行转换发生。我不希望每个转换都有新颖的解释,只要大的图景就可以用几个句子和内联的单行代码示例就足够了(或者链接,如果不是到二十页的科学论文)。最后清除。我希望能够看一段代码,并能够很好地猜测它是否可以编译成一个紧密的循环,或者为什么不编译,或者我必须进行更改以使其得以实现。(我对诸如流融合之类的大型优化框架不那么感兴趣(我只是读过一篇文章),而对编写这些框架的人所拥有的知识则没有那么大的兴趣。)

12
DDD-实体不能直接访问存储库的规则
在领域驱动设计,似乎有很多的协议,任何单位不应该访问存储库直接。 这是来自Eric Evans的“ 域驱动设计”书,还是来自其他地方? 背后的原因哪里有很好的解释? 编辑:澄清:我不是在谈论将数据访问从业务逻辑分离到单独层的经典OO做法-我是在谈论在DDD中实体不应该与数据交谈的特定安排根本没有访问层(即,它们不应保存对存储库对象的引用) 更新:我给了BacceSR赏金,因为他的回答似乎最接近,但是我对此仍然很不了解。如果它是如此重要的原理,那么肯定在某处在线有关于它的好文章吗? 更新:2013年3月,对该问题的投票暗示对此有很多兴趣,尽管有很多答案,但我仍然认为,如果人们对此有想法,还有更多的余地。


9
在Parallel.ForEach中嵌套等待
在Metro应用程序中,我需要执行许多WCF调用。需要进行大量调用,因此我需要在并行循环中进行调用。问题在于并行循环在WCF调用全部完成之前退出。 您将如何重构它以使其按预期工作? var ids = new List<string>() { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }; var customers = new System.Collections.Concurrent.BlockingCollection<Customer>(); Parallel.ForEach(ids, async i => { ICustomerRepo repo = new CustomerRepo(); var cust = await repo.GetCustomer(i); customers.Add(cust); }); foreach ( var customer in customers ) { Console.WriteLine(customer.ID); …


13
#1273-未知归类:'utf8mb4_unicode_ci'cPanel
我的本地计算机上有一个WordPress数据库,我想将其转移到cPanel上的托管phpMyAdmin。但是,当我尝试将数据库导入到环境中时,我不断收到此错误: #1273 - Unknown collation: 'utf8mb4_unicode_ci' 我已经尝试使用Google,但唯一可以找到的解决方案是此phpmysql错误-#1273-#1273-未知归类:'utf8mb4_general_ci'到目前为止,它并没有太大帮助。我曾尝试清除Cookie,但仍然无法正常工作。请帮忙!

8
无需安装apk即可获取Android .apk文件VersionName或VersionCode
下载并没有安装后,如何从AndroidManifest.xml文件中以编程方式获取我的apk的版本代码或版本名称。 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="xxx.xx.xxx" android:versionCode="1" android:versionName="1.1" > 例如,我要检查是否在我的IIS服务上上传了新版本,将其安装在设备上之后,如果它不是新版本,则我不想安装它。

10
如何使用javascript Object.defineProperty
我环顾四周如何使用该Object.defineProperty方法,但找不到任何合适的方法。 有人给了我这段代码: Object.defineProperty(player, "health", { get: function () { return 10 + ( player.level * 15 ); } }) 但是我不明白。主要是,这get是我无法得到的(双关语意)。它是如何工作的?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.