问题列表 - 第5289页

嵌入单声道时如何设置运行时选项?

像这些选项:

Usage is: mono [options] program [program-options]

Development:
    --aot                  Compiles the assembly to native code
    --debug[=]    Enable debugging support, use --help-debug for details
    --profile[=profiler]   Runs in profiling mode with the specified profiler module
    --trace[=EXPR]         Enable tracing, use --help-trace for details
    --help-devel           Shows more options available to developers

Runtime:
    --config FILE          Loads FILE as the Mono config
    --verbose, -v          Increases the verbosity level
    --help, -h             Show usage information
    --version, -V          Show version information
    --runtime=VERSION      Use the VERSION runtime, instead of autodetecting …

mono

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

如何在命名管道(mkfifo)上执行非阻塞fopen?

如果我有一个程序创建并尝试使用mkfifo打开命名管道,如何打开管道进行读取或写入而不阻塞?

具体来说,我正在编写一个可以使用或不使用gui(用Java编写)运行的C程序.

在C程序中,我使用mkfifo成功创建了命名管道,但是当我这样做时

FILE* in = fopen(PIPE_IN, "r"); /* Where PIPE_IN is the filename*/
Run Code Online (Sandbox Code Playgroud)

在GUI打开该管道进行写入之前,fopen不会返回.我想做的是让管道准备好被读取一次(如果)GUI决定写入它 - 我将把文件描述符放在select()调用中.期望java GUI可能永远不会真正启动是合理的,所以我不能依赖它在任何特定点甚至根本不能打开管道的另一端.

我还将打开第二个管道进行写作,我想我会遇到同样的问题.此外,我不能在没有读卡器的输出管道上设置O_NONBLOCK.

有什么建议?

(这是在linux系统上运行的)

c linux named-pipes fifo blocking

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

从php值中剥离$

我有一个表单,用户可以在其中输入他们在电话帐单上花费的金额,然后告诉他们如果他们切换到vonage,skype等可以节省多少钱.

我在网址中传递值"$ monthlybill",然后对其进行一些数学计算.问题是,如果用户在表单中写入"$ 5"而不是"5",则会中断并且不会将其识别为数字.如何从价值中剥离美元符号?

php

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

VB6 ssTab奇怪

我在VB6程序中使用ssTab控件(这可能是我的整个问题),我正在将数据绘制到位于选项卡0上的Picturebox中.当我重绘图形时(例如,在窗口调整大小之后),第一个我做的是清除方框:

Picture2.Line (0, 0)-(Picture2.Width, Picture2.Height), RGB(255, 255, 255), BF
Run Code Online (Sandbox Code Playgroud)

当Tab 0可见时,该工作正常,但如果在显示不同的选项卡时调用此代码,则整个可见选项卡(以及选项卡0)的背景将变为白色.不仅仅是Picture2的区域,而是两个标签的整个可见区域.除0以外的选项卡和当前选定的选项卡不受影响.

我第一次粗略地解决这个问题的方法是在上面的Line命令之前将标签更改回标签0:

SSTab1.Tab = 0 ' Select tab containing PictureBox2
DoEvents
Run Code Online (Sandbox Code Playgroud)

但是得到了相同的结果 - 原始标签和0标签现在都是白色的(尽管它确实将可见标签更改回标签0).

我注意到,当发生wallpainting时,Picture2.Width的值比它应该的大.如果Tab 0可见,当我调整窗口大小时,Picture2.Width在7180和21225 Twips之间变化.当我选择Tab 1并调整大小时,Picture2.Width大约为82180(高度保持在应有的位置).

我知道SStab有点儿马车,但有没有人知道任何工作方式?我可以将修复(在重绘后重新绘制两个选项卡上的灰色背景)整合在一起,但我想了解为什么Picture2.Width失去理智......

vb6

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

Apache2 - 使用BasicAuth授权用户使用位置,但仅限本地子网外的用户使用

在我的Apache 2配置中,我有一个VirtualHost看起来像这样的东西:

<VirtualHost *:80>
  ServerName sub.domain.com

  # username:password sent on to endpoint
  RequestHeader set Authorization "Basic dXNlcm5hbWU6cGFzc3dvcmQ=="

  ProxyPass        /xyz http://192.168.1.253:8080/endpoint
  ProxyPassReverse /xyz http://192.168.1.253:8080/endpoint

  <Location /xyz>
    # This needs to let users through under the following circumstances
    #   * They are in 192.168.1.0/24
    #   * They have a valid user in a htpasswd file

    # So what goes here?
  </Location>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

我正在使用虚拟主机作为网络上另一台服务器(我称之为端点)的反向代理.

我试图找出一种配置,允许网络内部的用户sub.domain.com自动为端点提供服务.但是,应提示网络外的用户提供凭据

端点需要一个我使用RequestHeader(我想要的)隐藏的密码.外部用户的密码应该是不同的,需要是BasicAuth,从htpasswd文件中获取用户列表.

apache apache2 apache-config basic-authentication

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

如何优化我的基本物理模拟器?

我写了一个简单的物理建模器,它允许我在屏幕周围弹跳球.您可以单击并拖动以启动球,或者您可以一次生成数百个球并观察它们彼此交互.

alt text http://i41.tinypic.com/2zr0oic.png
[链接到更大的版本]

这是一个很有趣的小程序,如果可以的话,我想进一步研究它.我知道他们说早熟优化是所有邪恶的根源,但我开始遇到实际的性能障碍,我想知道是否有任何有游戏/模拟器开发经验的人可以帮助我.

问题:

现在,如果你添加太多球(我的机器上似乎无法处理超过800个),我的程序就会窒息.如果这样做,模拟不再现实,并且所有球在底部彼此重叠.

问题在于碰撞检测.在最天真的情况下,碰撞检测是O(N ^ 2)问题.每个球都会检查每一个球.这很快就会导致性能下降(即使在100个球之后,你也会在每个循环周期进行10k次碰撞检查).

如果你看这里,你可以看到我添加了几百个球的截图.模拟器无法跟上,它们开始相互重叠.

alt text http://i41.tinypic.com/2nsnuqd.png
[链接到更大的版本]

目前,我通过寻找重叠球来检测碰撞.如果我找到两个重叠的球,我将它们按最小平移距离(MTD)分开,或将它们分开.然后,我使用一个简单的物理方程来调整它们的脉冲矢量,然后在碰撞后它们向不同的方向移动.

它的效果很好,除非有太多的球,最小的平移距离变得明显.它们开始大量重叠并且不断地在底部互相挤压.我越是"增加"引力就越糟糕.它们上的压力增加,它们被压缩/相互重叠的量增加.

再说一次,我没有问题,直到我击中了相当数量的N球.

当前优化方法:

碰撞检测 -
扫描和修剪 - (又称排序和扫描)

我在我的球上使用插入排序,每个循环沿x轴循环.由于插入排序的性质,我可以利用我的模拟器的时间一致性.框架到框架,球的位置只是稍微改变,因此排序没有太多工作要做.这使得线性分类分摊运行时间为O(N)或线性而不是其平均运行时间O(N ^ 2).

由于球是排序的,我在检查碰撞之前在第二个循环中做了几次预检查.现在我只需要检查彼此附近的球(因为它们沿着x轴排序),并且当我检查球与另一个球的xmin大于当前球的xmax时,我会突破第二个循环.所以它跳过了成千上万的支票.

当我实现这一点时,它带来了巨大的速度提升.但是,我仍然希望能够处理超过600-800个球.我已经阅读过物理引擎,可以轻松地同时处理10k个物体之间的碰撞检测,所以我想我可以通过一点点工作达到1-2k.

在运行了一个分析器之后,碰巧检测器占用了大约55%的时间,而渲染器占用了大约45%.所以,这是我最昂贵的两个成本.


题:

你能想到任何更好的算法或技术,让我的模拟器能够处理更多的球吗?


相关守则:

整个项目:

svn checkout http://simucal-projects.googlecode.com/svn/ballbounce/trunk/

或者,单击此处在浏览器中手动浏览文件.

感兴趣的部分:

optimization physics collision-detection

33
推荐指数
2
解决办法
3107
查看次数

C#web-service客户端:具有相同(复杂)返回类型的多个Web服务方法?

我正在努力建立一个Java B2B网络服务的客户端,我想我已经确定了我们已经存在一段时间的问题的原因.不幸的是我无法发布WSDL.

显然,我的自动生成的代理代码(通过wsdl.exe:由于WCF不支持密码摘要而必须使用WSE 3.0)无法处理具有多个具有相同复杂返回类型的Web方法的Web服务的WSDL.

举例来说 - 一个定义以下方法的Web服务:

Public ComplexTypeX Blah();
Public ComplexTypeX Blue();
Public ComplexTypeX Foo();
Public ComplexTypeY Bar();
Run Code Online (Sandbox Code Playgroud)

在我的Reference.cs文件中,如果我注释掉调用Blah(),Blue()或Foo()中任意两个的所有代码,那么剩余的未注释方法可以被调用没有问题.但是,如果我没有注释掉这三种方法中的一种(比如Blah()和Foo()),那么在实例化 Web服务客户端代码时我会收到以下错误消息:

"Blah方法无法反映出来." "命名空间' http://some.url '中的XML元素'ComplexTypeX' 引用方法和类型.使用WebMethodAttribute更改方法的消息名称,或使用XmlRootAttribute更改类型的根元素."

现在,肯定没有任何ComplexTypeX方法被定义为Web服务的一部分,所以我只能假设.NET(或至少wsdl.exe)不允许您使用返回复杂(用户定义)的Web服务多种方法中相同类型的类型......对吗?

c# xsd wsdl wsdl.exe

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

我如何声明Perl分裂的正则表达式?

我今天遇到了这个Perl构造:

@foo = split("\n", $bar);
Run Code Online (Sandbox Code Playgroud)

这适用于将大型字符串拆分为UNIX类型行结尾的行数组,但为Windows留下了尾随\ r \n.所以我改成了:

@foo = split("\r?\n", $bar);
Run Code Online (Sandbox Code Playgroud)

其中逐行拆分字符串并且不留下尾随\ r \n(在ActivePerl 5.8下测试).然后有人向我指出,这应该是:

@foo = split(/\r?\n/, $bar);
Run Code Online (Sandbox Code Playgroud)

那么为什么第二种变体会起作用呢?双引号意味着评估内容,这就是为什么\ r和\n实际上被视为CR和LF,但是?被视为正则表达式元字符而不是文字问号.

正则表达式周围的斜杠是split()的可选项吗?是否假设函数的第一个参数是正则表达式?

regex perl split

3
推荐指数
3
解决办法
3999
查看次数

在WebBrowser控件(C#/ .NET)中设置TextArea的值

我想使用.NET WebBrowser控件设置TextArea的值.

我已经能够使用以下代码设置文本框的值(将"username"替换为texbox的名称):

webBrowser1.Document.All.GetElementsByName("username")[0].SetAttribute("Value", "SomeUser");
Run Code Online (Sandbox Code Playgroud)

我尝试在TextArea上使用类似的代码(使用GetElementById)并且无法记住TextArea输入类型不包含"Value"属性.我还尝试设置TextArea的InnerHtml和InnerText,但在尝试设置TextArea输入的值时,编译器继续抛出空引用异常错误或索引超出范围错误.

有没有人知道如何使用WebBrowser控件在TextArea中设置文本?任何建议将不胜感激!

.net html c# webbrowser-control

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

我什么时候应该使用对象向量而不是指针向量?

我有一组多态对象,都来自我的Animal类:Cat,Dog和MonkeyFish.

我通常的操作模式是将这些对象存储在Animal指针的向量中,如下所示:

std :: vector <Animal*> my_vector;

my_vector.push_back( new Animal_Cat() );
my_vector.push_back( new Animal_Dog() );
my_vector.push_back( new Animal_MonkeyFish() );

生活很美好......或者是它?

我最近被告知我应该尽量避免以这种方式分配内存,因为它使内存管理成为一件苦差事.当我需要销毁my_vector时,我必须遍历所有元素并删除所有内容.

我不认为我可以存储引用的向量(我可能错了),所以看起来存储Animal对象的向量是我唯一的选择.

我什么时候应该选择使用指针向量与对象向量?一般来说,哪种方法更可取?(我想尽可能减少对象复制.)

c++

12
推荐指数
3
解决办法
6543
查看次数