我正在使用Objective-C编写一个程序,我需要向Web服务器发出Web请求,但异步并且我在mac上相当新,我非常擅长windows技术,但我需要知道如果我使用NSOperation(介绍)在10.5中,我假设它不会在10.4 MAC中运行?),或者如果它被实现使得它使用将在10.4上可用的系统线程?
或者我应该创建一个新的线程并创建一个新的runloop,如何使用cookie等,如果有人能给我一个小例子,这将是非常有帮助的.如果可能的话,我希望这个示例也可以在mac 10.4上运行.
我有一个Windows服务,它使用生产者/消费者队列模型,多个工作线程处理队列中的任务.这些任务可以运行很长时间,如果不是几小时,则按很多分钟的顺序运行,并且不涉及循环.
我的问题是关于处理服务停止以在这些工作线程上优雅地结束处理的最佳方法.我在另一个SO问题中读到,使用thread.Abort()是设计不良的标志,但似乎服务OnStop()方法在服务终止之前只有有限的时间完成.我可以在catchA中为ThreadAbortException做足够的清理(没有不一致状态的危险)所以在工作线程上调用thread.Abort()对我来说似乎没问题.是吗?有哪些替代方案?
我正在尝试学习新的ASP .NET MVC框架,并希望了解使用UserControls的最佳实践.
我知道您可以将UserControl作为部分渲染,并从控制器传递数据.理想情况下,我认为没有代码隐藏文件是有道理的,因为这会产生破坏MVC规则的诱惑.
我将举一个例子,我不明白UserControls如何适应模式.
我有一个显示最新标签的UserControl(很像StackOverflow).与StackOverflow不同,我想在我的所有页面上显示此UserControl.如果我有一个控制器说QuestionController是为了处理一些问题视图中的动作,例如视图和细节,这是否意味着我必须获取QuestionController中的数据然后将其传递给UserControl?
如果我创建另一个控制器说SearchController然后我将不得不复制相同的功能,以使最新的标签再次传递给部分.这是不是意味着2个不同的控制器正在做他们本来不打算做的额外的事情?
我有两个配置文件
/app/config/database.yml
Run Code Online (Sandbox Code Playgroud)
和
/app/config/userconfig.yml
Run Code Online (Sandbox Code Playgroud)
我不想将数据库凭据和userconfig放在svn-repository中,所以我签入了database.yml.dist和userconfig.yml.dist.
在第一次部署应用程序时,在共享目录中获取dist文件的copys的最佳方法是什么?
对于以后的部署,我将从/ app/current/config链接到它们
在C#中为模板/抽象类的构造函数实现策略的最佳方法是什么?我有几个类都基于解析构造函数中的字符串.解析是在静态方法中完成的,该方法创建键值对的列表,并且对于所有类都是通用的,但是某些字段对于所有类也是通用的 - 因此我使用抽象模板类.
问题是我没有看到继承抽象基类的构造函数实现的方法.否则,我会在基类中实现构造函数策略,并强制在一些抽象方法中处理列表.
编辑:添加模板类的不工作代码
public abstract class XXXMessageTemplate
{
public XXXMessageTemplate(string x) // implementation for the constructor
{
Parse(x);//general parse function
CommonFields();//filling common properties
HandlePrivateProperties();//fill individual properties
HandlePrivateStructures();//fill individual structures
}
abstract void HandlePrivateProperties();
abstract void HandlePrivateStructures();
}
The actual messages should not implement any constructor and only implement the HandlePrivateProperties and HandlePrivateStructures functions.
Run Code Online (Sandbox Code Playgroud) 这是一个我需要提出的一个有点主观的问题.为了成为一名熟练的C程序员,我觉得我从k&r学习C语言.我发现这本书有点随和,有时难以理解,但整体上很容易理解.
我的问题是,我是否必须绝对做所有练习(甚至那些困扰我的练习)才能成为C语言的熟练程序员?或者我可以跳过其中的大多数吗?问题的格式和布局是......很难,最多不使用C丰富的图书馆可用的工具.
我正在使用VB6。我创建的工具提取了几个 zip 文件并将它们解压缩到我在本地创建的文件夹中。在我代码的清理部分,我使用此代码删除了该文件夹
If (f.FolderExists(path + "Extracted Files") = True) Then
f.DeleteFolder (path + "Extracted Files")
End If
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,我在 f.DeleteFolder(path + 'Extracted Files') 行中收到错误 Run Time Error '70' 和 Permission Denied。
我哪里错了?还是我需要创建具有不同权限的文件夹?
我喜欢MVVM模式,一旦你开始使用它,你就会沉迷于它.
我知道在完美世界中,您的View代码隐藏几乎是空的(可能是构造函数中的一些代码),并且View的每个方面都是从ViewModel操纵的.
但有时在ViewModel中创建新字段,属性和命令会创建比在事件处理程序中实现相同内容的代码更多的代码.
我坚持遵守以下规则:
如果事件处理程序代码操纵它的视图的很小一部分(例如按钮单击事件处理程序增加了位于同一视图上的某些TextBlock的字体),则可以在事件处理程序中实现逻辑.但是,如果View需要操作业务逻辑或访问视图之外的资源,那么我将这些职责分配给ViewModel.
您如何看待我的方法?
使用事件处理程序和ViewModel时,您尝试避免什么?
使用MVVM模式时,您可以推荐哪些最佳实践?
$query4 = mysql_query("SELECT * FROM comments WHERE content_id = '$id' AND content = 'thread'
INNER JOIN users ON comments.poster = users.id
ORDER BY comments.date ASC");
while ($comment = mysql_fetch_array($query4)) {
}
Run Code Online (Sandbox Code Playgroud)
所有的表和列都存在,我连接到数据库,但它仍然给了我:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in thread.php on line 63
我在这做错了什么?
提前致谢.
DUnit通常的工作方式是编写一些已发布的方法,而DUnit将它们作为测试运行.我想做的是有点不同.我想在运行时根据数据创建测试.我正在尝试测试处理输入文件的特定模块以创建输出文件.我有一组测试输入文件,其中包含相应的已知良好输出文件.我们的想法是为每个输入文件动态创建一个测试,处理输入并根据已知的好输出检查输出.
然而,这里的实际数据来源并不重要.困难在于使DUnit以数据驱动的方式运行.为了解决这个问题,假设数据源只是一个随机数生成器.这是一个解决困难核心的示例具体问题:
在运行时创建一些测试对象(TTestCase或其他),比如10个,每个测试对象
从DUnit的设计来看,它的设计看起来具有足够的灵活性,使这些事情成为可能.我不确定它是不是.我试图通过继承TAbstractTest和ITest来创建我自己的测试类,但是一些关键的方法无法访问.我也尝试从TTestCase继承,但是这个类与运行已发布方法的想法密切相关(并且测试以方法命名,所以我不能只调用一个,比如'go',因为那时候我所有的测试都会被称为'go',我希望我的所有测试都被单独命名).
或者,是否有一些替代DUnit可以做我想要的?
.net ×2
asp.net-mvc ×1
asynchronous ×1
binding ×1
c ×1
c# ×1
capistrano ×1
constructor ×1
delphi ×1
deployment ×1
dunit ×1
dynamic ×1
macos ×1
mvvm ×1
mysql ×1
objective-c ×1
php ×1
sql ×1
svn ×1
vb6 ×1
wpf ×1