小编cod*_*ple的帖子

我怎么能等待一组异步回调函数?

我的代码在javascript中看起来像这样:

forloop {
    //async call, returns an array to its callback
}
Run Code Online (Sandbox Code Playgroud)

在完成所有这些异步调用之后,我想计算所有数组的最小值.

我怎么能等他们全部?

我现在唯一的想法就是有一个名为done的布尔数组,并在第i个回调函数中将done [i]设置为true,然后说while(并非所有都已完成){}

编辑:我想一个可能的,但丑陋的解决方案,就是在每个回调中编辑完成数组,然后如果从每个回调设置所有其他完成后调用一个方法,那么最后一个回调完成将调用continue方法.

提前致谢.

javascript asynchronous

92
推荐指数
5
解决办法
10万
查看次数

如何在smb:// URL的密码字段中转义@符号

我正在尝试编写一个bash脚本,我在其中连接到samba服务器,获取用户名和密码,然后说$ username:$ password @ SERVERNAME.

但是,如果密码中包含@,则会失败.有没有办法逃脱bash中的@ out密码?

提前致谢

更新:我正在设置此网络打印机

lpadmin -p PRINTER -v smb://$username:$password@SERVER -E
Run Code Online (Sandbox Code Playgroud)

除了$ password中有@符号的情况外,它有效; $ username和$ passwords变量来自读取标准输入

bash samba escaping

11
推荐指数
1
解决办法
1万
查看次数

C#DateTime时区减去问题

我有这行代码:

double seconds = new DateTime(2006,7,6,12,1,0,DateTimeKind.Local).Subtract(new DateTime(1970,1,1,0,0,0,DateTimeKind.Local).TotalSeconds;
Run Code Online (Sandbox Code Playgroud)

这不是我想要的正确号码,所以我尝试了以下方法:

double seconds = new DateTime(2006,7,6,12,1,0,DateTimeKind.Local).Subtract(new DateTime(1970,1,1,0,0,0,DateTimeKind.Utc).TotalSeconds;
Run Code Online (Sandbox Code Playgroud)

(不同之处在于,在一种情况下,我使用当地时间作为纪元,而在另一种情况下,我使用UTC).有趣的是,他们都给了我相同的价值,我不知道为什么会这样.我住在-600 GMT,所以DateTimeKind.Local实际上应该影响事情.

提前致谢!

c# timezone datetime

6
推荐指数
1
解决办法
2745
查看次数

使用变量URL的jquery $ .ajax函数

var array = new Array();
$.get('comics.txt', function(data) {
    array = data.split(",");
    for(var i = 0; i < array.length; i++)
    {
        var $page = array[i];
        $.ajax({
            url: $page,
            success: function(data) {
                alert(data);
            }
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

comics.txt是一个包含一些URL的文件,以逗号分隔.

在上面的代码中,$ .ajax调用不起作用; $ page是正确的URL,但它在上下文中不起作用.警报(数据)导致出现空白警告框.我需要帮助找出一种方法来从数组中的每个页面获取数据.

提前谢谢.

ajax jquery

2
推荐指数
1
解决办法
6235
查看次数

XmlSerializer用0x0020(十六进制值)替换空格

出于某种原因,我的带有空格的XmlElements用_x0020代替空格打印.

例如,

[XmlElement("The Total")]
public double total { get; set; }
Run Code Online (Sandbox Code Playgroud)

<The_0x0020_Total>当我把它打印出来时变成了 我正在使用TextWriter输出,然后我使用XmlSerializer.Serialize打印到文件,但它不起作用.

c# hex xmlserializer

2
推荐指数
1
解决办法
401
查看次数

使用jQuery的ajax调用来刷新验证码

我写了自己的php captcha脚本,带有jpeg标题,这样我就可以说了

<img src="captcha.php">
Run Code Online (Sandbox Code Playgroud)

它的工作原理是将验证码的值存储到会话变量中.当用户无法阅读时,我希望它可以刷新.

我第一次尝试

$("#refresh").click(function() {
    $("#captcha").attr("src","captcha.php");
});
Run Code Online (Sandbox Code Playgroud)

但当然这没有意义,我需要做一个ajax调用.你们怎么都建议我这样做?

PS我也试过了

$.ajax({
    url: "captcha.php",
    success: function(result) {
        $("#captcha").attr("src",result);
    }
});
Run Code Online (Sandbox Code Playgroud)

php ajax captcha

2
推荐指数
1
解决办法
9257
查看次数

在WPF中拖放图像

我试图将图像从画布上的一个点拖放到另一个点(应该相对简单),但无法弄明白.我要移动的图像有以下XAML:

<Image Height="28" HorizontalAlignment="Left" Margin="842,332,0,0" Name="cityImage" Stretch="Fill" VerticalAlignment="Top" Width="42" Source="/Settlers;component/Images/city.png" MouseLeftButtonDown="cityImage_MouseLeftButtonDown" MouseMove="cityImage_MouseMove" MouseLeftButtonUp="cityImage_MouseLeftButtonUp"/>
Run Code Online (Sandbox Code Playgroud)

代码如下:

bool isDragging = false; Point initMousePos; private void cityImage_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) {
isDragging = true;
initMousePos = e.GetPosition(theGrid); } private void cityImage_MouseMove(object sender, MouseEventArgs e) {
if (isDragging)
{
    Image image = sender as Image;
    Canvas.SetTop(image, initMousePos.X);
    Canvas.SetLeft(image, initMousePos.Y);
    image.Visibility = System.Windows.Visibility.Visible;
} }
Run Code Online (Sandbox Code Playgroud)

private void cityImage_MouseLeftButtonUp(object sender,MouseButtonEventArgs e){isDragging = false; }

c# wpf drag-and-drop

1
推荐指数
1
解决办法
3924
查看次数

在 Blender 中以编程方式渲染的 3D 动画

我有一个项目,我想根据输入以编程方式创建和渲染 3d 动画。我最初在 stackoverflow 上询问 Blender 是否适合这项工作,答案是肯定的,但是在查看 API 时,它说:

Python 嵌入在 Blender 中,因此要访问 BPython 模块,您需要从程序本身运行脚本:您无法将 Blender 模块导入外部 Python 解释器。

我希望能够创建和渲染这个场景,而不必打开像 Blender 这样的另一个程序。这可能吗,Blender 仍然是正确的选择吗?

提前致谢!

3d rendering blender

1
推荐指数
1
解决办法
2553
查看次数

字符串构造函数操作系统之间的差异

我有以下代码:

byte[] b = new byte[len]; //len is preset to 157004 in this example
//fill b with data by reading from a socket
String pkt = new String(b);
System.out.println(b.length + " " + pkt.length());
Run Code Online (Sandbox Code Playgroud)

这在Ubuntu上打印出两个不同的值; 157004和147549,但OS X上的值相同.此字符串实际上是由ImageIO库传输的图像.因此,在OS XI上能够将字符串解码为图像就好了,但是在Ubuntu上我无法做到.

我在OS X上使用版本1.6.0_45,并在Ubuntu上尝试了相同的版本,以及Oracle jdk 7和默认的openjdk.

我注意到我可以通过使用Latin-1解码来获得字符串长度等于字节数组的长度:

String pkt = new String(b,"ISO-8859-1");
Run Code Online (Sandbox Code Playgroud)

然而,这不能解码图像,并且理解正在发生的事情可能很困难,因为字符串对我来说就像垃圾一样.

我对使用相同的jdk版本,但使用不同的操作系统感到困惑.

java character-encoding

1
推荐指数
1
解决办法
205
查看次数