运行以下类时,ExecutionService通常会死锁.
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ExecutorTest {
public static void main(final String[] args) throws InterruptedException {
final ExecutorService executor = Executors.newFixedThreadPool(10);
final HashMap<Object, Object> map = new HashMap<Object, Object>();
final Collection<Callable<Object>> actions = new ArrayList<Callable<Object>>();
int i = 0;
while (i++ < 1000) {
final Object o = new Object();
actions.add(new Callable<Object>() {
public Object call() throws Exception {
map.put(o, o);
return null;
}
});
actions.add(new Callable<Object>() { …Run Code Online (Sandbox Code Playgroud) 在XCode 3.0到3.1之间,NIB-> XIB的变化是什么?当我浏览除了.nib文件之外的其他教程时,我应该知道这个名称更改有什么不同吗?
我需要做一种"超时"或在我的方法中暂停10秒(10000毫秒),但我不确定以下是否会起作用,因为我没有多线程.
Thread.Sleep(10000);
Run Code Online (Sandbox Code Playgroud)
我将尝试使用当前的代码,但如果有人可以解释这样做的最佳和正确的方法,我将不胜感激,特别是如果上述代码无法正常工作.谢谢!
更新:这个程序实际上是一个控制台应用程序,在该函数中对一个服务器执行许多HTTPWebRequests,所以我希望将它们延迟指定的毫秒数.因此,不需要回调 - 所需要的只是"无条件暂停" - 基本上整个事情停止10秒然后继续.我很高兴C#仍然认为这是一个线程,所以Thread.Sleep(...)会起作用.谢谢大家!
我有一个像这样的XML:
<?xml version="1.0" encoding="utf-8" ?>
<colors>
<color index = "0">#FF0000</color>
<color index = "1">#FF0200</color>
<color index = "2">#FF0300</color>
<color index = "3">#FF0500</color>
[..]
Run Code Online (Sandbox Code Playgroud)
我正在尝试按索引选择节点:
XmlDocument ColorTable = new XmlDocument();
ColorTable.Load(HttpContext.Current.Server.MapPath("~/App_Data/ColorTable.xml"));
int percentage = 2;
string xpath = string.Format(@"//color[index={0}]", percentage.ToString());
//string xpath = string.Format(@"//color[index=""{0}""]", percentage.ToString());
//string xpath = string.Format(@"//color[index='{0}']", percentage.ToString());
var r = ColorTable.SelectSingleNode(xpath).Value;
Run Code Online (Sandbox Code Playgroud)
我也尝试了注释版本,但它没有返回任何结果.有什么建议吗?
我开发了一家跨国公司使用的关键应用程序。全球各地办公室的用户都需要能够安装此应用程序。
该应用程序实际上是 Excel 的一个插件,我们有一个基于 Setuptools 的 easy_install 的自动安装程序,可确保用户每次打开 Excel 时自动安装或更新项目的所有依赖项。这一切都运行得非常优雅,因为用户很少意识到所有安装完全在后台进行。
不幸的是,我们正在扩大和开设新的办事处,这些办事处都有不同的代理设置。这些设置似乎每天都在变化,因此我们无法跟上那些在不告诉我们的情况下更改内容的外包安全人员。这很糟糕,但我们必须解决它。
我想以编程方式检测用户运行的 Windows 工作站上的系统范围代理设置:
组织中的每个人都运行 Windows XP 和 Internet Explorer。我已经证实,每个人都可以毫无问题地从 IE 下载我们的东西,无论他们在世界的哪个地方。
因此,我需要做的就是检测 IE 正在使用哪些代理设置,并让安装工具使用这些设置。理论上所有这些信息都应该在注册表中..但是有没有更好的方法来找到它并保证不会随着人们升级 IE 而改变?例如,我可以使用 Windows API 调用来发现代理设置吗?
总之:
更新0:
我忘记了一个重要的细节:每个站点都有一个自动配置“pac”文件。
Windows\CurrentVersion\InternetSettings\AutoConfigURL 中有一个键,它指向本地服务器上的 HTTP 文档,其中包含看起来像 JavaScript 文件的内容。
pac 脚本基本上是一系列嵌套的 if 语句,它将 URL 与正则表达式进行比较,然后最终返回所选代理服务器的主机名。该脚本是一个名为 FindProxyForURL(url, host) 的 JavaScript 函数
因此,挑战在于找出任何给定服务器要使用哪个代理。唯一 100% 保证执行此操作的方法是查找 pac 文件并从 Python 调用 Javascript 函数。
有什么建议么?有没有更优雅的方法来做到这一点?
我有一个测试文件,其中包含花费大量时间的测试(它们将计算发送到集群并等待结果).所有这些都在特定的TestCase类中.
由于它们需要时间而且不太可能破坏,我希望能够选择这个测试子集是否运行(最好的方式是使用命令行参数,即" ./tests.py --offline"或者某种东西那样的话,所以当我有时间的时候,我可以经常快速地运行大部分测试,并且整个设置会在一段时间内完成.
现在,我只是unittest.main()用来开始测试.
谢谢.
我想生成xsd.exe方式的类,而不是linq toxsd方式.
谢谢, - 兰.
我使用Tidy来清理和制作符合HTML/XHTML的HTML文件.但是,输出包含非标准属性值,如:
<table id='abc'>...
Run Code Online (Sandbox Code Playgroud)
要么
<input type='button' />
Run Code Online (Sandbox Code Playgroud)
(看一下单引号).如何配置Tidy以提供严格的XHTML输出?先感谢您!
我有一个简单的自签名小程序(用keytool和jarsigner完成):
public class NetAppletLauncher extends JApplet {
private static final long serialVersionUID = 1L;
public void init() {
exec("notepad c:/hello.txt");
}
public void exec(String command) {
try {
// launch EXE and grab stdin/stdout and stderr
Process process = Runtime.getRuntime().exec(command);
// OutputStream stdin = process.getOutputStream();
InputStream stderr = process.getErrorStream();
InputStream stdout = process.getInputStream();
// "write" the parms into stdin
// stdin.write(arguments.getBytes());
// stdin.flush();
// stdin.close();
// clean up if any output in stdout
String line = "";
BufferedReader brCleanUp = …Run Code Online (Sandbox Code Playgroud) 我写了一个正则表达式来从html中获取字符串,但似乎多行标志不起作用.
这是我的模式,我想在h1标签中获取文本.
var pattern= /<div class="box-content-5">.*<h1>([^<]+?)<\/h1>/mi
m = html.search(pattern);
return m[1];
Run Code Online (Sandbox Code Playgroud)
我创建了一个字符串来测试它.当字符串包含"\n"时,结果始终为null.如果我删除所有"\n",它给了我正确的结果,无论是否带有/ m标志.
我的正则表达式有什么问题?
c# ×3
java ×2
javascript ×2
python ×2
xml ×2
.net ×1
applet ×1
concurrency ×1
hashmap ×1
html ×1
iphone ×1
networking ×1
nib ×1
objective-c ×1
proxy ×1
regex ×1
schema ×1
setuptools ×1
signed ×1
tidy ×1
timeout ×1
unit-testing ×1
windows ×1
xcode ×1
xhtml ×1
xpath ×1
xsd ×1