问题列表 - 第2469页

GCC:程序不适用于编译选项-O3

当我用优化(选项-O1,-O2,-O3等)编译它时,我正在编写一个不起作用的C++程序(我遇到了分段错误),但是当我编译它时它工作得很好优化.

我的代码中是否有错误的可能性?或者我应该假设这是GCC中的错误?

我的GCC版本是3.4.6.

这种问题有没有已知的解决方法?

我的程序的优化和未优化版本之间的速度差异很大,所以我真的需要使用优化.


这是我原来的算子.没有优化级别的工作正常,并且在任何优化级别都会引发分段错误:

struct distanceToPointSort{
    indexedDocument* point ;
    distanceToPointSort(indexedDocument* p): point(p) {}
    bool operator() (indexedDocument* p1,indexedDocument* p2){
        return distance(point,p1) < distance(point,p2) ;
    }
} ;
Run Code Online (Sandbox Code Playgroud)

并且这个可以完美地适用于任何级别的优化:

struct distanceToPointSort{
    indexedDocument* point ;
    distanceToPointSort(indexedDocument* p): point(p) {}
    bool operator() (indexedDocument* p1,indexedDocument* p2){

        float d1=distance(point,p1) ;
        float d2=distance(point,p2) ;

        std::cout << "" ;  //without this line, I get a segmentation fault anyways

        return d1 < d2 ;
    }
} ;
Run Code Online (Sandbox Code Playgroud)

不幸的是,这个问题难以重现,因为它发生了一些特定的值.我在对超过一千个向量中的一个进行排序时得到了分段错误,所以它实际上取决于每个向量具有的特定值组合.

c++ gcc compilation

9
推荐指数
5
解决办法
7094
查看次数

Django的原子操作?

我正在尝试实现(我认为)一个非常简单的计数器数据模型:

class VisitorDayTypeCounter(models.Model):
    visitType = models.CharField(max_length=60)
    visitDate = models.DateField('Visit Date')
    counter = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

当有人通过时,它将查找与visitType和visitDate匹配的行; 如果此行不存在,则将使用counter = 0创建.

然后我们增加计数器并保存.

我担心的是这个过程完全是一场竞赛.两个请求可以同时检查实体是否存在,并且它们都可以创建它.在读取计数器并保存结果之间,另一个请求可能会通过并递增(导致计数丢失).

到目前为止,我还没有找到一个很好的方法,无论是在Django文档还是在教程中(实际上,看起来教程在投票部分有竞争条件).

我该如何安全地做到这一点?

database django concurrency locking race-condition

24
推荐指数
5
解决办法
8181
查看次数

where子句中的参数顺序是否会影响表是否使用索引?

所以我想知道这个问题是否有明确的答案.
此外,索引是群集还是非群集是否重要.在所有RDBMS实现中是否相同,或者确切的行为是专有的?

sql rdbms

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

如何防止ASP/VBScript中的注入?

ASP(VBScript)中用于输入处理的最佳方式(或至少是最常用的方法)是什么?我主要关心的是HTML/JavaScript注入和SQL注入.是否有一些等同于PHP htmlspecialcharsaddslashes等等?或者我必须手动执行字符串替换功能吗?

vbscript code-injection input-filtering asp-classic

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

JScrollPane中的JEditorPane没有根据需要调整大小

我正在我的应用程序中实现一个注释框工具,用户可以使用鼠标调整大小.此注释框包含一个滚动窗格,其中包含一个JEditorPane用户可以插入注释的内容.我在滚动窗格中添加了编辑器窗格,原因如下:

自动掠夺jeditorpane

当用户调整注释框的大小时,我正在设置所需的大小JScrollPaneJEditorPane.当用户增加评论框的大小时,这些组件的大小会根据需要增加,但是当评论框的大小JEditorPane减小时,即使在设置大小之后,大小也不会减小.这导致滚动窗格内的滚动条.

我试着用setPreferrredSize,setSize,setMaximumSizeJEditorPane.编辑器窗格的大小仍然没有减少.我尝试调用revalidate()updateUI()在设置大小后但没有用.

我使用的是Java 1.4.2.

请给我一些见解....

java swing resize jeditorpane jscrollpane

5
推荐指数
2
解决办法
8822
查看次数

Java中的术语"规范形式"或"规范表示"是什么意思?

我经常听到这个术语被使用,但我从来没有真正理解它.

这是什么意思,任何人都可以举一些例子/指点我的链接?

编辑:感谢大家的回复.你能告诉我规范表示在equals()性能中是如何有用的,如Effective Java中所述?

java

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

如何使用代码在WPF中创建菜单分隔栏

我正在使用vb.net以编程方式在WPF中创建菜单.有人可以告诉我如何在代码中添加分隔栏到菜单吗?请不要xaml.

vb.net wpf menu

30
推荐指数
2
解决办法
4万
查看次数

如何摆脱尝试捕获?

我对周围的代码感到厌倦,尝试像这样抓住..

try
{
    //some boring stuff
}
catch(Exception ex)
{
    //something even more boring stuff
}
Run Code Online (Sandbox Code Playgroud)

我想要的东西

SurroundWithTryCatch(MyMethod)
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过创建具有该函数的确切签名的委托来完成此行为,但是为我的应用程序中的所有方法创建委托它不是一个选项.

我也可以通过注入IL代码来做到这一点,但这在性能方面很昂贵,因为它在我的周围创建了一个包装器组件.

还有其他有效的想法吗?

c# error-handling

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

使用MySql来自.Net - 许可问题

我正在研究一个项目,并试图确定使用什么平台.现在,我的第一选择是将ASP.Net MVC与MySql数据库一起使用.我对此的担心是MySql驱动程序具有GPL许可证.我正在为公司创建这个,因此它不能是一个开源项目.以下是我的问题:

  1. 如果我使用具有GPL许可证的MySql驱动程序,我是否必须使整个应用程序开源?
  2. 有没有人知道任何其他具有较少限制许可的MySql驱动程序?
  3. PostgreSql有一个LGPL许可证,我认为应该没问题,但我找不到任何有ASP.Net和PostgreSql的托管网站.任何人都知道任何便宜的托管计划(最好是10美元/ 20美元/月),两者都提供?

.net mysql asp.net

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

Linux上新Rails部署的最佳实践?

我已经使用了直接的Mongrel,我在Apache后面使用了Mongrel集群,我看过Thin,而且我对乘客非常感兴趣.我也看过Nginx.我看过MRI,Ruby Enterprise Edition,Rubinius和JRuby.有很多选择,每个都声称是新的圣杯.

一个全新的,完全最新的部署的最佳选择是什么?唯一的假设是这样的:

  • 该应用程序是基于Rails 2.2.(我知道2.2尚未完全发布,但这部署也不是.)
  • 该服务器是基于Linux的.可能是Ubuntu Hardy,但实际上,无论在这种情况下效果最好.
  • Rails需要完全正常运行,并且可能与MySQL数据库通信.
  • 其他一切都是可以谈判的.

鉴于这些特别广泛的约束,在并发性和低开销方面,哪种软件组合将产生最佳结果?

我倾向于使用"worker"mpm和Passenger + Ruby Enterprise Edition,因为它提供了即时的稳定性和简单的设置和维护.

另外一个选择我可能会特别好吗?

ruby linux deployment ruby-on-rails release-management

31
推荐指数
2
解决办法
3973
查看次数