问题列表 - 第9187页

我的记忆在哪里?大的私有字节数

我有一个WPF应用程序,其中包括显示大量和小的图像.我的问题是该应用程序使用了大量内存,我无法弄清楚它来自何处.

情节,当强调应用程序时,我在perfmon中得到这个图:

http://www.imagechicken.com/uploads/1244548604007097000.jpg

黑色大行是Process\Private字节,其他行是CLR mem计数器(粉红色是总提交字节)

图中的数字是:
专用字节~350 Mb
承诺字节~100 Mb

我一直在使用WinDbg和其他工具进行大量挖掘,并且他们都报告托管堆栈的行为(!eeheap报告总托管堆栈大约100 Mb)

我一直在寻找像LeakDiag,LDGrapher这样的应用程序但却一无所获.

所以,最后我的问题是,如何继续寻找记忆的去向?

即使只是启动应用程序使用100Mb的承诺字节,但190Mb的私有字节.

参考文献:

我已经在很多网站上阅读了很多相关内容:

Tess Ferrandez:http://blogs.msdn.com/tess/archive/2009/02/27/net-memory-leak-reader-email-are-you-really-leaking-net-memory.aspx

Rico Mariani:http://blogs.msdn.com/ricom/archive/2004/12/10/279612.aspx

MSDN mag:http://msdn.microsoft.com/en-us/magazine/cc163528.aspx

.net debugging wpf memory-leaks

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

系统的总内存消耗

假设系统的总内存消耗(虚拟+物理)是Windows中任务管理器显示的"内存使用"和"VM大小"列的总和,这是正确的吗?

windows-xp taskmanager

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

NuSOAP和数组响应

我有NuSOAP网络服务器:...

    $server->register('getMembersEvents',       
        array('date' => 'xsd:string'),                      
        array('Events' => 'tns:Events'),
        'urn:my',             
        false,                          
        'rpc',                          
        false,                          
        'Description'               
    );

    $server->wsdl->addComplexType(
        'Events',
        'complexType',
        'array',
        '',
        'SOAP-ENC:Array',
        array('Event' =>array ('name' => 'Event', 'type' => 'tns:Event')),
        array(
            'Event' => array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:Event[]')
        ),
        'tns:Event'
    );

$server->wsdl->addComplexType(
    'Event',
    'complexType',
    'struct',
    'all',
    '',
    array(
        'field1' => array('name' => 'MemberNumber', 'type' => 'xsd:int'),
                 // ...
        'fieldN' => array('name' => 'WebMemberID', 'type' => 'xsd:int')
    )
);
Run Code Online (Sandbox Code Playgroud)

一切正常,但响应似乎是:

<SOAP-ENV:Body>
  <ns1:getMembersEventsResponse xmlns:ns1="urn:eliza">
         <Events xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Event[2]">
            <item xsi:type="tns:Event">
               <field1 xsi:type="xsd:int">123</field1>
                  ...
               <fieldN xsi:type="xsd:int">123</fieldN>
            </item>
            <item xsi:type="tns:Event">
               <field1 …
Run Code Online (Sandbox Code Playgroud)

php nusoap

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

有趣的我应该什么时候使用它们的用途

我似乎无法绕过他们.

据我所知,它是动态地向类添加逻辑.框架内的课程是否为此准备好了?

我为什么要扩展类并在扩展中添加它的功能.我将在全球范围内访问,并且更容易维护.

我读过有4种仿函数类型:

Comparer
Closure
谓词
变压器

我们应该处理它们中的每一个.

ps在vb中有类似的东西吗?

所以我可以说我认为lambda表达式是仿函数.这为我清理了一些东西:)(呵呵)

  • Lambda表达式是算子?
  • 匿名函数是函子吗?

但我问了这个问题,因为我遇到了另一种类型的fucntors,即这些:

delegate void FunctorDelegate(int value);
class Addition {
    FunctorDelegate _delegate;

    public Addition AddDelegate(FunctorDelegate deleg) {
        _delegate += deleg;
        return this;
    }
    public int AddAllElements(IList< int> list) {
        int runningTotal = 0;
        foreach( int value in list) {
            runningTotal += value;
            _delegate(value);
        }
        return runningTotal;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后用这个调用它:

 int runningTotal = new Addition()
     .AddDelegate(new FunctorDelegate(
                     delegate(int value) {
                         if ((value % 2) == 1) {
                             runningOddTotal += value; …
Run Code Online (Sandbox Code Playgroud)

.net c# generics lambda functor

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

UITableView,在选择时更改配件时出现问题

我正在使用UITableView来选择一个(很多)项目.与选择铃声时的UI类似,我想要检查所选项目,而不是其他项目.我想在触摸时选择单元格,然后将其设置为正常颜色(再次,就像铃声选择UI一样).

UIViewController子类是我的表的委托和数据源(不是UITableViewController,因为我还有一个工具栏).

我在cellForRowAtIndexPath:中设置单元格的accessoryType,并在didSelectRowAtIndexPath:中选择单元格时更新我的​​模型.我可以想到将所选单元格设置为复选标记(并清除前一个单元格)的唯一方法是在didSelectRowAtIndexPath:中调用[tableView reloadData].但是,当我这样做时,单元格取消选择的动画很奇怪(单元格的标签应该出现一个白框).当然,如果我不调用reloadData,则accessoryType不会更改,因此不会出现复选标记.

我想我可以关闭动画,但这似乎很蹩脚.我也玩弄了改变didSelectRowAtIndexPath:中的细胞,但这是一个很大的痛苦.

有任何想法吗?缩写代码如下......

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell* aCell = [tableView dequeueReusableCellWithIdentifier:kImageCell];
    if( aCell == nil ) {
        aCell = [[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:kImageCell];
    }

    aCell.text = [imageNames objectAtIndex:[indexPath row]];
    if( [indexPath row] == selectedImage ) {
        aCell.accessoryType = UITableViewCellAccessoryCheckmark;
    } else {
        aCell.accessoryType = UITableViewCellAccessoryNone;
    }
    return aCell;
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
    selectedImage = [indexPath row]
    [tableView reloadData];
}
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uitableview

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

SQL查询特定日期的顶部和底部值

SQL Server 2000

我的表:

CARDNO  CARDEVENTDATE   CARDEVENTTIME
121 20090610    025050
 121    20090611    040000
121 20090611    050000
121 20090611    020000
122 20090611    030001
122 20090611    030000
123 20090611    080000
123 20090611    100000
123 20090611    132449
123 20090611    025959
124 20090610    030000
124 20090612    030001
125 20090611    030002
125 20090612    040000
Run Code Online (Sandbox Code Playgroud)

Cardno是独立的表Cardeventdate,cardeventtime是独立的表

从上表中我想获得特定cardeventdate和Cardno的最佳时间和最低时间

对于121,20090611,Top Time是040000,Bottom Time是020000 For 123,20090611,Top Time是080000,Bottom Time是025959 ...就像我需要的那样.

我使用了Min(时间)和Max(时间),但它显示了这样.

对于CardNo - 121 Cardeventdate - 20090611 Min Time - 020000 Max Time - 040000

我不想得到min和Max,我只需要特定Date和Cardno的top和Bottom(或)First和Last time值.

我用过这个查询

SELECT     RowNumber = …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2000

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

如何从bash脚本向Python发送SIGINT?

我想从bash脚本启动后台Python作业,然后使用SIGINT优雅地终止它.这可以从shell工作得很好,但我似乎无法让它在脚本中工作.

loop.py:

#! /usr/bin/env python
if __name__ == "__main__":
    try:
        print 'starting loop'
        while True:
            pass
    except KeyboardInterrupt:
        print 'quitting loop'
Run Code Online (Sandbox Code Playgroud)

从shell我可以打断它:

$ python loop.py &
[1] 15420
starting loop
$ kill -SIGINT 15420
quitting loop
[1]+  Done                    python loop.py
Run Code Online (Sandbox Code Playgroud)

kill.sh:

#! /bin/bash
python loop.py &
PID=$!
echo "sending SIGINT to process $PID"
kill -SIGINT $PID
Run Code Online (Sandbox Code Playgroud)

但是从脚本我不能:

$ ./kill.sh 
starting loop
sending SIGINT to process 15452
$ ps ax | grep loop.py | grep -v grep
15452 pts/3    R      0:08 …
Run Code Online (Sandbox Code Playgroud)

python bash

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

使用Liferay Portal建立新网站 - 基本步骤?

我知道这不是一个特别的编程问题,但程序员经常需要做这项工作.

如何使用Liferay门户网站创建一个网站 - 文档在这个基本问题上非常清楚,并且都适用于4.4版本.我使用的是5.2版,文档似乎并不相关.

你知道基本步骤是什么吗?到目前为止,我已经以bruno用户身份登录,可以看到7cogs网站并对其进行编辑.但我现在需要创建自己的网站(对于我的公司)并能够开发portlet以添加到页面的各个部分.

此外,我注意到文档谈论在Eclipse中工作.如果我们的网站都是静态HTML,(我们希望liferay的主要原因是我们可以使用其内容管理工具编辑内容项),那么是否需要Java dev,或者全部都是拖放和点击得到安装.任何指导将不胜感激.

portal portlet liferay web

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

同时迭代偶数和奇数列表项

我有一个项目列表(HTML表格行,用Beautiful Soup提取),我需要遍历列表并获得每个循环运行的偶数和奇数元素(我的意思是索引).我的代码看起来像这样:

for top, bottom in izip(table[::2], table[1::2]):
    #do something with top
    #do something else with bottom
Run Code Online (Sandbox Code Playgroud)

如何使这个代码不那么难看?或者也许是这样做的好方法?

编辑:

table[1::2], table[::2]  => table[::2], table[1::2]
Run Code Online (Sandbox Code Playgroud)

python for-loop python-itertools

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

哪个有更好的表现?静态与对象

我设计了一个C#控制台应用程序,使用OOP设计合并和拆分大文件(大小约4GB).它涉及读/写xml,平面文件和图像.我有读者和作家的课程.

合并时间约为00:12,而分裂时间超过04:30.然后我通过将输出文件分发到子目录而不是使用单个目录,将分割的性能提高到00:50.

我的老板要求我将所有内容转换为静态过程编程,而不是对象.他说00:12合并比较00:50分裂是不平衡的.他希望通过转换为静态来在00:30分钟完成分割.

现在我知道静态调用更快按照.但是我不同意所有静态都会更好,因为我必须在方法中使用"ref"和"out"参数.

我的问题是:

  1. 将文件拆分到子目录的原因比使用单个输出目录快得多?(即大量文件> 200,000)
  2. 有没有比将代码从对象转换为静态更好的方法,以实现更高的性能?

c# oop performance static

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