问题列表 - 第19803页

actionscript函数中的线程是什么?

我见过很多其他开发人员在ActionScript函数中引用线程.作为一个新手,我不知道他们指的是什么:

在这个意义上什么是线程?
我如何一次运行多个线程?
我如何确保我一次只运行一个线程?

谢谢〜迈克

apache-flex multithreading actionscript-3

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

iPhone UITableView - 删除按钮

我正在使用'滑动删除'功能UITableView.

问题是我使用的UITableViewCell是基于每个项目创建的自定义

- (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Run Code Online (Sandbox Code Playgroud)

我需要改变删除按钮的位置(只需将其向左移动10px左右),我该怎么做呢?

这是我现有的创建单元格的代码:

- (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@"cellForRowAtIndexPath");
#if USE_CUSTOM_DRAWING
    const NSInteger TOP_LABEL_TAG = 1001;
    const NSInteger BOTTOM_LABEL_TAG = 1002;
    UILabel *topLabel;
    UILabel *bottomLabel;
#endif

    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil)
    {
        //
        // Create the cell.
        //
        cell =
        [[[UITableViewCell alloc]
          initWithFrame:CGRectZero
          reuseIdentifier:CellIdentifier]
         autorelease];

#if USE_CUSTOM_DRAWING


        const CGFloat LABEL_HEIGHT = 20;
        UIImage *image = [UIImage imageNamed:@"trans_clock.png"];

        // …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview

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

当数据在其他地方发生变化时迭代大型 Django 查询集

迭代查询集,如下所示:

class Book(models.Model):
    # <snip some other stuff>
    activity = models.PositiveIntegerField(default=0)
    views = models.PositiveIntegerField(default=0)

    def calculate_statistics():
        self.activity = book.views * 4
        book.save()

def cron_job_calculate_all_book_statistics():
    for book in Book.objects.all():
        book.calculate_statistics()
Run Code Online (Sandbox Code Playgroud)

...工作得很好。然而,这是一个 cron 任务。book.views发生这种情况时正在增加。如果book.views在此 cronjob 运行时进行修改,则会将其恢复。

现在,book.views它不会被 cronjob 修改,但会在.all()查询集调用期间被缓存。当 时book.save(),我有一种感觉它正在使用旧book.views值。

有没有办法确保只activity更新字段?或者,假设有 100,000 本书。这将需要相当长的时间才能运行。但是book.views将从查询集最初开始运行时开始。解决方案是仅使用 吗.iterator()

更新:这实际上是我正在做的事情。如果您对如何使其内联工作有想法,那么我完全支持。

def calculate_statistics(self):
    self.activity = self.views + self.hearts.count() * 2
    # Can't do self.comments.count with a comments GenericRelation, because …
Run Code Online (Sandbox Code Playgroud)

python django django-models

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

在Expression Blend中使用Silverlight Toolkit控件的XamlParseException

我在使用Silverlight Toolkit控件时在Expression Blend中打开我的UserControl时遇到一个奇怪的问题.我的UserControl使用工具包的ListBoxDragDropTarget,如下所示:

<controlsToolkit:ListBoxDragDropTarget mswindows:DragDrop.AllowDrop="True" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch">
        <ListBox ItemsSource="{Binding MyItemControls}" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
            <ListBox.ItemsPanel>
                <ItemsPanelTemplate>
                    <controlsToolkit:WrapPanel/>
                </ItemsPanelTemplate>
            </ListBox.ItemsPanel>
        </ListBox>
</controlsToolkit:ListBoxDragDropTarget>
Run Code Online (Sandbox Code Playgroud)

一切都在运行时按预期工作,在Visual Studio 2008中看起来很好.但是,当我尝试在Blend中打开我的UserControl时,我得到XamlParseException:[Line:0 Position:0],我在设计视图中看不到任何内容.更具体地说,Blend抱怨:

由于System.Windows.Controls.ListBoxDragDropTarget:TargetType不匹配的问题,无法显示元素"ListBoxDragDropTarget".

我的silverlight应用程序引用了2009年11月工具包版本中的System.Windows.Controls.Toolkit,我确保为ListBoxDragDropTarget包含这些命名空间声明:

xmlns:controlsToolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit"
xmlns:mswindows="clr-namespace:Microsoft.Windows;assembly=System.Windows.Controls.Toolkit"
Run Code Online (Sandbox Code Playgroud)

如果我注释掉ListBoxDragDropTarget控件包装器并且只是离开ListBox,我可以在设计视图中看到一切没有错误.此外,我意识到这种情况正在发生在各种Silverlight Toolkit控件上,因为如果我注释掉ListBoxDragDropTarget并将其替换为

<controlsToolkit:BusyIndicator />
Run Code Online (Sandbox Code Playgroud)

Blend中出现相同的确切错误.甚至更奇怪的是,如果我在混合中启动一个全新的silverlight应用程序,我可以添加这些工具包元素而不会出现任何错误,因此我的项目引用工具包程序集似乎发生了一些愚蠢的事情.

我很确定这与从generic.xaml加载工具包控件的默认样式有关,因为错误与TargetType有关,Blend可能正在尝试加载默认样式.

有没有人遇到过这个问题,或者有什么想法可能是我的问题?

silverlight xaml silverlight-toolkit xamlparseexception expression-blend

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

我可以只从另一个 git 存储库中提取某些文件吗?

例如,假设我有存储库 1 和存储库 2。存储库 1 有一个文件/a/b/c/d。我可以将此文件作为 导入到存储库 2 中吗/e/f/g/h

原因是我想从不同的 git 存储库的实验分支中提取更改。我尝试将所有内容合并在一起,但存在大量(各种)冲突。因此,我怀疑我是否可以合并整个分支,但我想尝试尽可能多地引入。

有什么方法可以做我想做的事情,或者我只能直接复制文件吗?

git merge branch git-branch

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

你如何使用Control.Applicative编写更干净的Haskell?

在最近的一个风格问题的答案中,我写道

main = untilM (isCorrect 42) (read `liftM` getLine)
Run Code Online (Sandbox Code Playgroud)

isCorrect num guess =
  case compare num guess of
    EQ -> putStrLn "You Win!" >> return True
    ...
Run Code Online (Sandbox Code Playgroud)

Martijn帮助提出了替代方案:

main = untilM (isCorrect 42) (read <$> getLine)

EQ -> True <$ putStrLn "You Win!"
Run Code Online (Sandbox Code Playgroud)

使用Control.Applicative中的抽象可以使Haskell代码中的哪些常见模式更清晰?有效使用Control.Applicative时要记住哪些有用的经验法则?

haskell coding-style

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

替换lambda表达式中的参数

我有一部分代码在运行时接受lambda表达式,然后我可以编译和调用它.

Something thing;

Expression<Action<Something>> expression = (c => c.DoWork());
Delegate del = expression.Compile();
del.DynamicInvoke(thing);
Run Code Online (Sandbox Code Playgroud)

为了节省执行时间,我将这些已编译的委托存储在缓存中,Dictionary<String, Delegate>其中键是lambda表达式字符串.

cache.Add("(Something)c => c.DoWork()", del);
Run Code Online (Sandbox Code Playgroud)

对于完全相同的调用,它工作正常.但是我意识到我可以收到相当的lambda,例如"d => d.DoWork()",我实际上应该使用相同的委托,而我不是.

这让我想知道是否有一种干净的方式(读取"不使用String.Replace",我已经将其作为临时修复)来替换lambda表达式中的元素,比如可能替换它们arg0以便两者都可以

(c => c.DoWork())(d => d.DoWork())

(arg0 => arg0.DoWork())通过使用类似于在lambda中注入Expression.Parameter(Type,Name)的东西进行转换和比较.

那可能吗 ?(答案可以包括C#4.0)

c# lambda delegates expression

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

REST Web服务API设计

只想获得有关我计划如何构建API的反馈.下面的虚拟方法.这是结构:

GET http://api.domain.com/1/users/ <-- returns a list of users
POST http://api.domain.com/1/users/add.xml <-- adds user
POST http://api.domain.com/1/users/update.xml <-- updates user
DELETE (or POST?) http://api.domain.com/1/users/delete.xml <-- deletes user
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 可以使用GET和POST吗?
  2. 我打算依靠文件名来指示要执行的操作(例如添加add.xml)是一个好主意吗?做这样的事情会更好:POST http://api.domain.com/1/users/add/data.xml
  3. 保持这些资源版本的好方法是什么?在我的示例中,我使用/ 1/after域名来表示版本1.替代方案将是:http://api1.domain.com ...或http://api-1.domain.com ...或者http://apiv1.domain.com ...或http://api-v1.domain.com ...或http://api.domain.com/v1/ ...或
  4. 验证的最佳方法是什么?

api rest

15
推荐指数
2
解决办法
7031
查看次数

是否可以在任何地方替换全球"运营商new()"?

我想替换全局operator new()operator delete()(及其所有变体)以便做一些内存管理技巧.我希望我的应用程序中的所有代码都使用自定义运算符(包括我自己的DLL中的代码以及第三方DLL).我已经阅读了一些内容,链接器将选择它在链接时看到的第一个定义(例如,如果包含您的自定义的库operator new()首先链接,它将"击败"与CRT的链接).有没有办法保证会发生这种情况?有什么规则,因为这确实是一个多重定义的符号(例如,void* operator new(size_t size)在全局命名空间中有两个定义)?

那些可能与CRT静态链接的第三方DLL呢?即使它们与CRT动态链接,有什么方法可以让它们与我的 链接operator new()

c++ linker memory-management

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

使用标头和实现文件的C++类

我已经整理了一个简单的C++"Hello World"程序来练习; 不幸的是,在编译时我遇到了一些错误:

预期')'在fName之前

错误:'HelloWorld :: HelloWorld(std :: string,std :: string)'的原型与类'HelloWorld'中的任何一个都不匹配

以下是我的代码,任何人都可以帮助我理解我缺少/忽视的内容吗?谢谢.

标题:

  1 #ifndef HELLOWORLD_H_ 
  2 #define HELLOWORLD_H_
  3 #include <string>
  4 
  5 class HelloWorld
  6 {
  7     public:
  8         HelloWorld();
  9         HelloWorld(string fName, string lName);
 10         ~HelloWorld();
 11 };
 12 
 13 #endif
Run Code Online (Sandbox Code Playgroud)

执行:

  1 #include <iostream>
  2 #include <string>
  3 #include "HelloWorld.h"
  4 
  5 using namespace std;
  6 
  7 HelloWorld::HelloWorld()
  8 {
  9     cout << "Hello, anonymous!";
 10 }
 11 
 12 HelloWorld::HelloWorld(string fName, string lName)
 13 {
 14 …
Run Code Online (Sandbox Code Playgroud)

c++

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