问题列表 - 第15256页

如何在Linux上的c中睡眠或暂停PThread

我正在开发一个我做多线程的应用程序.我的一个工作线程在窗口小部件上显示图像.另一个线程播放声音.我想在按钮单击事件上停止/暂停/暂停/休眠线程.和点击视频播放器播放/暂停按钮时相同.我正在使用pthread库进行线程化在linux平台上用c ++开发我的应用程序.

有人能告诉我如何实现线程暂停/挂起吗?

c c++ pthreads

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

iphone中的多行文字字段

我需要在iphone文本区输入多行文字.但默认的textfiled是单行.有什么方法可以使它成为多线的.

谢谢,提彬.

iphone multiline textfield

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

一个语句中的索引,赋值和增量在C++和C#中表现不同.为什么?

为什么这个代码示例在c ++C#中表现不同.

[C++示例]

int arr[2];
int index = 0;
arr[index] = ++index;
Run Code Online (Sandbox Code Playgroud)

结果将是arr [1] = 1 ;

[C#示例]

int[] arr = new int[2];
int index = 0;
arr[index] = ++index;
Run Code Online (Sandbox Code Playgroud)

结果将是arr [0] = 1 ;

我觉得这很奇怪.当然,两种语言必须有不同的理由来实现它吗?我想知道C++/CLI会输出什么?

c# c++ indexing operators prefix-operator

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

CodeCoverage与ExpectedException

我有几个这种模式的单元测试:

[TestMethod ()]
[ExpectedException (typeof (ArgumentNullException))]
public void DoStuffTest_Exception ()
{
    var foo = new Foo ();
    Foo.DoStuff (null);
}
Run Code Online (Sandbox Code Playgroud)

事实证明,代码覆盖率将抛出线标记为半运行,因此每次我得到1块未覆盖的代码.

在考虑了这个问题一段时间后,我能想出的最佳解决方案是添加一个try/catch.由于这是一个重复的模式,我将创建一个帮助方法

public static void ExpectException<_T> (Action action) where _T: Exception
{
    try { action(); }
    catch (_T) { return; }
    Assert.Fail ("Expected " + _T);
}
Run Code Online (Sandbox Code Playgroud)

这将有很好的附带好处,我可以将所有异常测试添加到非投掷测试.

这是一个有效的设计,还是我错过了什么?

编辑: Ugs ...看起来像上面的ExpectException方法也留下了1个未覆盖的块.

c# unit-testing expected-exception

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

DRY:仅显示用户拥有的记录.可以使用models.Manager吗?

我需要向用户显示他拥有的对象.由于我需要在超过80%的观看次数上执行此操作,因此硬编码会导致DRY死亡.更重要的是,用户永远不会看到其他人拥有的记录.手工完成(在所有视图中)似乎也容易出错.

我一直在寻找装饰器(如login_required),但这似乎在请求处理过程的早期.是否可以将request.user值获取到自定义编写的管理器中并执行以下操作:

class CustomerManager(models.Manager):
    def get_query_set(self):
        return super(CustomerManager, self).get_query_set().filter(created_by=request.user)
Run Code Online (Sandbox Code Playgroud)

或者经理对象就像'不去!' 就请求信息而言,作为模型定义?

非常感谢.


这是保存对象的一部分,但纯粹在这里作为详细说明,而不是必要的阅读.

保存部分相对安全.我更改了模型上的object.save()函数,因此它将userid作为parm.

def save(self, userid):  
    self.created_by = userid    
    super(Customer, self).save(userid)
Run Code Online (Sandbox Code Playgroud)

在视图中:

if form.is_valid():
    customer = form.save(commit=False)
    customer.save(request.user)
Run Code Online (Sandbox Code Playgroud)

这样我以前不需要在我的视图中使用下面的行 customer.save...

    customer.created_by = request.user
Run Code Online (Sandbox Code Playgroud)

从而减少了错误.

django django-models

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

HTML-attribute中的JSTL if语句

是否有可能在JSTL中做这样的事情:

<div class="firstclass<c:if test='true'> someclass</c:if>">
   <p>some other stuff...</p>
</div>
Run Code Online (Sandbox Code Playgroud)

有没有办法让它工作,或者是否有更好的方法通过查看JSTL-if语句来添加类?

css jsp jstl jsp-tags

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

将docstrings添加到namedtuples?

是否可以以简单的方式将文档字符串添加到namedtuple?

我试过了

from collections import namedtuple

Point = namedtuple("Point", ["x", "y"])
"""
A point in 2D space
"""

# Yet another test

"""
A(nother) point in 2D space
"""
Point2 = namedtuple("Point2", ["x", "y"])

print Point.__doc__ # -> "Point(x, y)"
print Point2.__doc__ # -> "Point2(x, y)"
Run Code Online (Sandbox Code Playgroud)

但这并没有削减它.是否有可能以其他方式做?

python docstring namedtuple

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

nhibernate +迁移工作流程

我希望改进我的NHibernate工作流程和相对频繁变化的架构,以及如何最好地处理这个问题 - 我希望同样的解决方案适用于生产系统,所以我认为我需要一个迁移引擎而不仅仅是Schema Update .

我想知道的是我如何尽可能地改进工作流程,以便我尽可能少地工作以使我的数据库与我的域模型同步.脚本的tarantino方法看起来不错,但似乎没有办法从我的nHibernate映射生成更新脚本,因此我可以手工制作脚本或使用redgate sql比较工具.有什么我想念的东西可以让脚本生成阶段的生活变得更轻松吗?

谢谢,克里斯

database migration nhibernate version-control

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

LINQ中的条件"orderby"排序顺序

在LINQ中,是否可以使用条件orderby排序顺序(升序与降序).

像这样的东西(不是有效的代码):

bool flag;

(from w in widgets
 where w.Name.Contains("xyz")
 orderby w.Id (flag ? ascending : descending)
 select w)
Run Code Online (Sandbox Code Playgroud)

.net c# linq

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

帧缓冲对象问题

您好,我正在使用OpenGLES为iPhone编程,但我目前遇到了一个奇怪的帧缓冲对象错误.

起初我正在学习Simon Maurice的一些教程:http: //web.me.com/smaurice/AppleCoder/Welcome.html

但是在继续其他教程之前我继续做了一些我自己的实验,但是我的实验遇到了问题.我试图做的是让EAGLView成为ViewController的视图,当基本代码最初来自教程时,这非常有效.

由于EAGLView是UIView的子类,因此不难做到这一点,所以继续进行实验我想用干净的石板来做.我使用基于Windows的应用程序项目在Xcode中创建了一个新项目,并创建了一个新的EAGLView和一个ViewController来执行与上一个项目相同的任务.

但是,在编译和运行后,视图显示为白色,并且控制台在createFramebuffer过程中输出"未能完成帧缓冲对象%x"错误.(错误控制台输出:"GLController [2071:207]无法使完整的帧缓冲对象0").

我首先想到的是我的代码,所以我将前一个项目的工作代码翻录到新项目中,但仍然收到相同的错误.与此同时,我将新项目代码移动到旧项目中,并使用成功的输出进行编译.

我很困惑为什么相同的代码在新项目中无法正常工作,但新代码将在旧项目中正常工作.如果有人知道我错过了什么,将不胜感激.

谢谢.

(还使用Apple示例代码中的几个EAGLView进行了测试,并且在新项目中出现相同的错误,但在附加了ViewController的旧项目中不会发生此错误.)

iphone opengl-es eaglview uiviewcontroller uiview

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