问题列表 - 第35042页

搜索已整理的整数数组

有没有一种简单的方法来搜索这样的数组?以下是一些例子:

5 6 7 8 19 45 21 32 40  // Rolled over at 7 th element
15 22 32 45 121 341 40  // Rolled over at 7 th element
1 22 32 45 121 341 400  // Rolled over at 0 th element
Run Code Online (Sandbox Code Playgroud)

algorithm performance search

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

我发布了多少次分配或保留的对象?

我正在制作iPhone游戏.我想释放已分配或保留的所有对象.在dealloc我发布所有这些对象的函数中,但后来我意识到有时候我还没有分配对象时最终释放对象.所以我想retainCount在发布它之前我需要检查它是否大于零.

我的问题是:

我只是检查是否retainCount大于零,然后释放它?

if([bg retainCount]!=0)
{
  [bg release];
}
Run Code Online (Sandbox Code Playgroud)

要么

我应该多次发布它 retainCount

while([bg retainCount]!=0)
{
  [bg release];
}
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

iphone memory-management retain cocos2d-iphone retaincount

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

App Engine中的objects.latest()等价物

使用AppEngine获取最新插入对象的最佳方法是什么?我知道在Django中可以使用

MyObject.objects.latest()
Run Code Online (Sandbox Code Playgroud)

在AppEngine中,我希望能够做到这一点

class MyObject(db.Model):
  time = db.DateTimeProperty(auto_now_add=True)

# Return latest entry from MyObject.
MyObject.all().latest()
Run Code Online (Sandbox Code Playgroud)

任何的想法 ?

python django google-app-engine

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

意外的Scala模式匹配语法

我有一个Scala元组列表,如下所示:

val l = List((1,2),(2,3),(3,4))
Run Code Online (Sandbox Code Playgroud)

我希望将它映射到Int列表中,其中每个项目是相应元组中Ints的总和.我也不想使用x._1表示法,所以我用这样的模式匹配解决了问题

def addTuple(t: (Int, Int)) : Int = t match { 
    case (first, second) => first + second 
}
var r = l map addTuple
Run Code Online (Sandbox Code Playgroud)

这样做我按预期获得了列表r:List [Int] = List(3,5,7).在这一点上,几乎是偶然的,我发现我可以使用如下的缩写形式获得相同的结果:

val r = l map {case(first, second) => first + second}
Run Code Online (Sandbox Code Playgroud)

我在我的文档中找不到对此语法的任何引用.这是正常的吗?我错过了一些微不足道的事情吗?

syntax scala pattern-matching

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

Ruby YAML :: load

我正在尝试修改内置时间戳格式的默认反序列化,以影响Ruby的时间.

我用哈希(成功)做到了这一点:

YAML::add_domain_type('yaml.org,2002', 'map') { |t, v| nil }
YAML::add_domain_type('ruby.yaml.org,2002', 'hash') { |t, v| nil }
hash = { :hello => :world }
puts YAML::load(hash.to_yaml) # nil
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用Time时,它不起作用:

YAML::add_domain_type('yaml.org,2002', 'timestamp') { |t, v| nil }
YAML::add_domain_type('ruby.yaml.org,2002', 'time') { |t, v| nil }
puts YAML::load(Time.now.to_yaml).class # 'Time'
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.谢谢!

ruby yaml ruby-on-rails

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

为什么Generic.xaml中的合并字典需要绝对的uri?

考虑一个文件| WPF应用程序的新项目,包含:

  1. 一个名为CustomControl1的新自定义控件
  2. 两个新的资源字典名为Dictionary1和Dictionary2

从Generic.xaml中取出生成的样式并将其移动到Dictionary2.然后将Dictionary2合并为Dictionary1,将Dictionary1合并为Generic,如下所示:

<!--Generic.xaml-->
<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="pack://application:,,,/Themes/Dictionary1.xaml"/>
</ResourceDictionary.MergedDictionaries>

<!--Dictionary1.xaml-->
<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="Dictionary2.xaml"/>
</ResourceDictionary.MergedDictionaries>
Run Code Online (Sandbox Code Playgroud)

然后,将CustomControl1的实例添加到MainWindow的网格中.(这部分是重现问题所必需的.项目总是很好编译 - 只有在运行时才能显示问题,并且必须引用字典.)

在Dictionary1.xaml中,我在同一个文件夹中的另一个dict中合并,因此一个简单的Source ="Dictionary2.xaml"可以工作.但在Generic.xaml中,我必须使用绝对URI.如果我在没有pack://应用程序的东西的情况下将上面的内容更改为Source ="Dictionary1.xaml",那么我会在尝试构造MainWindow时遇到由IOException引起的XamlParseException"无法找到资源'dictionary1.xaml'".

我的问题: 关于相对URI解析的generic.xaml有什么特别之处,为什么?

wpf resourcedictionary

10
推荐指数
2
解决办法
3046
查看次数

使用Fluent NHibernate的两个非FK列加入表

我正在使用Fluent NHibernate,我有两个表:

 BusinessPlan [Id, Year, CustomerCode]

 PreviousYearData [Id, Year, CustomerCode, MoreFieldsForData]
Run Code Online (Sandbox Code Playgroud)

在我的域中,我想将PreviousYearData加入BusinessPlan,使实体成为这样的:

public class BusinessPlan {
    public Guid Id { get; set; }
    public int Year { get; set; }
    public string CustomerCode { get; set; }
    public PreviousYearData PreviousYearData {get; set;}
}

public class PreviousYearData {
    public Guid Id { get; set; }
    public int Year { get; set; }
    public string CustomerCode { get; set; }
    // many more fields
}
Run Code Online (Sandbox Code Playgroud)

PreviousYearData表中的数据在创建BusinessPlans之前的年初预先填充,因此我不知道BusinessPlan的Id将是什么,并且无法创建正常的外键.我想我想要做的是根据Year和CustomerCode这两个列将PreviousYearData加入BusinessPlan.这可能与Fluent NHibernate一起使用吗?还有另一种方法可以解决这个问题吗?

architecture nhibernate fluent-nhibernate

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

将'None'作为函数参数传递(其中parameter是函数)

我正在编写一个小应用程序,必须在执行之前执行一些"健全性检查".(例如,健全性检查:测试某条路径是否可读/可写/存在)

代码:

import logging
import os
import shutil
import sys
from paths import PATH

logging.basicConfig(level=logging.DEBUG)
log = logging.getLogger('sf.core.sanity')

def sanity_access(path, mode):
    ret = os.access(path, mode)
    logfunc = log.debug if ret else log.warning
    loginfo = (os.access.__name__, path, mode, ret)
    logfunc('%s(\'%s\', %s)==%s' % loginfo)
    return ret

def sanity_check(bool_func, true_func, false_func):
    ret = bool_func()
    (logfunc, execfunc) = (log.debug, true_func) if ret else \
        (log.warning, false_func)
    logfunc('exec: %s', execfunc.__name__)
    execfunc()

def sanity_checks():
    sanity_check(lambda: sanity_access(PATH['userhome'], os.F_OK), \
                 lambda: None, sys.exit)
Run Code Online (Sandbox Code Playgroud)

我的问题与sanity_check功能有关.

这个函数有3个参数(bool_func …

python lambda

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

如何在C++中创建和初始化双精度SAFEARRAY以传递给C#

我需要从C++调用我的C#方法

最初我的C#方法接受double []类型的参数,但是当从C++调用时它变成了SAFEARRAY

在C++中,我需要从双精度数组中获取数据,并填充SAFEARRAY.我没有找到任何示例代码来执行此操作.

任何帮助表示赞赏

c# c++ safearray visual-c++

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

当线程全部为空时,C3P0明显死锁?

我在Tomcat中使用C3P0作为连接池,我看到非常令人担忧的错误:

2010-09-16 13:25:00,160 [Timer-0] WARN  com.mchange.v2.async.ThreadPoolAsynchronousRunner  - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@43502400 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
2010-09-16 13:25:01,407 [Timer-0] WARN  com.mchange.v2.async.ThreadPoolAsynchronousRunner  - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@43502400 -- APPARENT DEADLOCK!!! Complete Status:
  Managed Threads: 10
  Active Threads: 0
  Active Tasks:
  Pending Tasks:
    com.mchange.v2.resourcepool.BasicResourcePool$1RefurbishCheckinResourceTask@6e4151a7
  Pool thread stack traces:
  Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#6,5,main]
    java.lang.Object.wait(Native Method)
    com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:534)
  Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main]
    java.lang.Object.wait(Native Method)
    com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:534)
  Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main]
    java.lang.Object.wait(Native Method)
    com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:534)
  Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main]
    java.lang.Object.wait(Native Method)
    com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:534)
  Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#5,5,main]
    java.lang.Object.wait(Native Method)
    com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:534)
  Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#4,5,main]
    java.lang.Object.wait(Native Method)

... many more, exact same stack trace
Run Code Online (Sandbox Code Playgroud)

第534行是:

 while (true) {
   Runnable …
Run Code Online (Sandbox Code Playgroud)

java connection-pooling c3p0

28
推荐指数
2
解决办法
6万
查看次数