问题列表 - 第29888页

我什么时候应该在堆上分配?(C++)

我真的不明白什么时候应该在堆上分配内存,什么时候应该在堆栈上分配内存。我真正知道的是,在堆栈上分配速度更快,但由于堆栈较小,我不应该使用它来分配大型数据结构;在决定在哪里分配内存时我还应该考虑哪些其他因素?编辑:我应该在哪里分配实例变量?

c++ memory memory-management

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

目录行走的速度更快,而不是os.listdir?

我正在努力提高elfinder的性能,这是一个基于ajax的文件管理器(elRTE.ru).

它在一个recurisve中使用os.listdir以递归方式遍历所有目录并且具有性能命中(比如列出具有3000 +文件的目录需要7秒).

我试图改善它的性能这里是它的步行功能:

        for d in os.listdir(path):
            pd = os.path.join(path, d)
            if os.path.isdir(pd) and not os.path.islink(pd) and self.__isAccepted(d):
                tree['dirs'].append(self.__tree(pd))
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. 如果我改变os.walk而不是os.listdir,它会改善性能吗?
  2. 如何使用dircache.listdir()?在初始请求时缓存WHOLE目录/ subdir内容并返回缓存结果,如果没有上传新文件或文件没有更改?
  3. 目录行走的其他方法有哪些更快?
  4. 任何其他服务器端文件浏览器,用python快速编写(但我更喜欢快速编写这个)?

python directory performance file-io

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

服务器如何将数据推送到客户端?

学习java服务器技术,试图澄清一些事情.很少有技术允许Java应用程序相互通信.

1)通过http的Web服务(REST/SOAP)

2)通过http使用URLConnection进行简单的POST/GET.

3)插座

4)RMI =套接字+对象序列化+一些实用程序

5)不同的媒体服务器,如red5 = rtmp或rtmpt

所有这些技术都假定存在服务器应用程序和客户端应用程序.客户端应用程序知道服务器地址,应该是调用的发起者 据我所知,现在服务器将数据推送到客户端,他只能将数据作为响应发送回客户端.并且有可能,如果只有他们改变他们的角色,在这种情况下服务器应该知道客户端IP.

所以我想知道网络游戏是如何运作的?是否有可能在服务器和客户端之间始终打开连接和交换数据,而不是每1-2秒从客户端请求一次,服务器就不知道客户端IP.我不是在谈论彗星和其他黑客.

谢谢

java sockets

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

尖括号<>和双引号""之间的区别,同时在C++中包含头文件?

可能重复:
#include <filename>和#include"filename"有什么区别?

在C++中包含头文件时,尖括号< >和双引号有什么区别" "

我的意思是应该使用例如包含#include <QPushButton>哪些文件:以及使用例如包括哪些文件:#include "MyFile.h"???

c c++ c++11

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

序列化使用yield return创建的IEnumerator <T>

有没有办法序列化(使用BinaryFormatter)IEnumerator<T>当我使用yield returns 时创建的?自动生成的类未标记Serializable.

.net c# serialization yield

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

'NSString'可能无法响应'-hexIntValue'警告,功能正常

我将接收的十六进制颜色值作为字符串并将其转换为int,以便我可以获得正确的十六进制值.我的导入下面有以下代码:

@implementation NSString (HexIntValue)

- (unsigned int)hexIntValue
{

    NSScanner *scanner;
    unsigned int result;

    scanner = [NSScanner scannerWithString: self];  
    [scanner scanHexInt: &result];

    return result;

}

@end
Run Code Online (Sandbox Code Playgroud)

然后在这里调用函数:

unsigned int x = (int)[globalBGColor hexIntValue];
Run Code Online (Sandbox Code Playgroud)

一切正常,但我真的想摆脱警告,因为我或多或少准备提交我的应用程序.

谢谢!

iphone objective-c iphone-sdk-3.0

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

iPhone - App再次被拒绝,HTTP Live Streaming 64kbps基线Feed

感谢您提交APPNAME_HERE.我们已经审核了您的应用程序,并确定此时无法将其发布到App Store,因为它没有使用64 kbps的基线流来实现HTTP直播流协议来播放流式视频.在通过蜂窝网络传输视频馈送时,需要HTTP直播流,以便获得最佳用户体验并利用蜂窝网络最佳实践.该协议自动确定用户可用的带宽,并适当调整带宽,即使带宽流发生变化.这样,只要将64 kbps设置为基线源,就可以灵活地拥有任意数量的流.

这是我从Apple获得的,尽管我有48kbps,64kbps,128kbps和384kbps流可用.如何设置基线Feed?我的应用程序现在的工作方式是先加载可用的最低值,然后再按带宽向上扩展.这是我的索引m3u8

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=48000
stream-soundonly.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000
stream-64k.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=128000
stream-128k.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=384000
stream-384k.m3u8
Run Code Online (Sandbox Code Playgroud)

Apple真的很挑剔

iphone streaming baseline appstore-approval ios4

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

在C中是malloc(256)和malloc(sizeof(char)*256)等价吗?

我看到人们经常编写C代码,例如:

char *ptr = malloc(sizeof(char)*256);
Run Code Online (Sandbox Code Playgroud)

这真的有必要吗?标准说,sizeof(char)==1根据定义,只写这样有意义:

char *ptr = malloc(256);
Run Code Online (Sandbox Code Playgroud)

谢谢,Boda Cydo.

c malloc pointers sizeof

12
推荐指数
2
解决办法
8885
查看次数

.NET中的订单如何委托连接?

这是情况.我正在审查一些我没有编写的SDK代码,因为我的任务是起草开发人员的文档.在一个类中,在构造函数中,事件处理设置如下:

_engine.ReceiverEvents_OnPosition += OnPosition;
_engine.ConnectionEvents_OnDeviceStatus += OnDeviceStatus;
_engine.ConnectionEvents_OnErrorStatus += OnErrorStatus;
_engine.ReceiverEvents_OnConstellation += OnConstellation;
Run Code Online (Sandbox Code Playgroud)

订购首先是事件提升; 方法 - 呼叫第二.

在另一个类中,在方法(而不是构造函数)中,事件处理设置如下:

_captureManager.PositionLogged += CaptureManager_PositionLogged;
_captureManager.GeometryCaptureStarted += CaptureManager_GeometryCaptureStarted;
Run Code Online (Sandbox Code Playgroud)

排序方法是首先调用Method-To-Call,然后是Event-Raised second.

我的问题是 - 在设置事件处理任意(顺序无关紧要)时是事件引发和方法调用的顺序还是重要(不同的顺序会给你不同的结果)?

提前致谢.

c# event-handling

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

SQL Server 2005网络IO等待时间(ASYNC_NETWORK_IO等待类型)问题

我们在高峰时段在Web应用程序上遇到性能问题,目前在一个2003 IIS6 Web服务器和一个SQL Server 2005数据库服务器之间分配.DB服务器上的查询时间看起来很好(大约30ms),CPU很低(低于20%),但查询可能需要很长时间才能在Web服务器上执行(超过1秒).

我正在寻找perfmon的线索,并发现平均网络IO等待时间约为400毫秒,这可以很好地解释性能差异.我还在SSMS内部运行了一些查询,看到每秒大约有10,000ms的累积ASYNC_NETWORK_IO等待类型.

从某些研究来看,似乎问题是网络容量不足,或者Web服务器没有足够快地处理结果.我如何调查它是什么,然后解决?

我们将NHibernate用于数据层,因此据我所知,没有使用DataReader.虽然有一个表包含一个包含压缩XML文档的列,但没有已知的查询返回大型结果集.

提前致谢

其他请求的信息

  • Sql Server设置为使用TCP/IP和共享内存协议
  • 我们每页大约提出4个DB请求,没什么可笑的
  • 在高峰时间,DB Server发送1.5MB /秒
  • 最高峰时,Web服务器CPU约为60%
  • 在峰值时,Web服务器NIC负载为13MB /秒.8MB正在发送,5MB正在接收.相同的NIC处理SQL和HTTP流量
  • 我们确实使用了一些缓存,但应用程序非常动态,因此大多数时候都需要最新的数据

sql-server asp.net nhibernate networking sql-server-2005

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