为什么Apple似乎非常讨厌C++; 这在以前的版本中始终适用于Xcode,并且仍然适用于.m文件.为什么他们会删除人们每天实际使用的功能?并非每个人都只使用Objective-C.有没有办法让文件模板再次执行此操作?
我无法在任何地方找到答案,但是当我尝试使用static或const成员变量序列化结构或类时,默认情况下它们不会序列化.如果我尝试通过设置强制序列化MemberSerialization.OptIn,我会收到错误.
恩.
[JsonObject(MemberSerialization.OptIn)]
public class Test
{
[JsonProperty]
public int x = 1;
[JsonProperty]
public static int y = 2;
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试使用以下命令序列化此类:
Test t = new Test();
string s = JsonConvert.SerializeObject( t );
Run Code Online (Sandbox Code Playgroud)
我收到了错误Error getting value from 'y' on 'Test'.如果y是const,则会发生同样的情况.
我的理论是静态和const值存储在特殊的内存中,并且由于某种原因,Json序列化器试图访问它们.这完全是一种预感,我在C#Reference for Static中看不到任何帮助.我对C#比较陌生 - 在这一点上,这真的是一个好奇的问题.
我需要一种快速的方法来找到NxN阵列中M个最大元素的2D位置和值.
现在我这样做:
struct SourcePoint {
Point point;
float value;
}
SourcePoint* maxValues = new SourcePoint[ M ];
maxCoefficients = new SourcePoint*[
for (int j = 0; j < rows; j++) {
for (int i = 0; i < cols; i++) {
float sample = arr[i][j];
if (sample > maxValues[0].value) {
int q = 1;
while ( sample > maxValues[q].value && q < M ) {
maxValues[q-1] = maxValues[q]; // shuffle the values back
q++;
}
maxValues[q-1].value = sample;
maxValues[q-1].point = …Run Code Online (Sandbox Code Playgroud) 我正在尝试在OpenCL中编写直方图内核来计算RGBA32F输入图像的256个bin R,G和B直方图.我的内核看起来像这样:
const sampler_t mSampler = CLK_NORMALIZED_COORDS_FALSE |
CLK_ADDRESS_CLAMP|
CLK_FILTER_NEAREST;
__kernel void computeHistogram(read_only image2d_t input, __global int* rOutput,
__global int* gOutput, __global int* bOutput)
{
int2 coords = {get_global_id(0), get_global_id(1)};
float4 sample = read_imagef(input, mSampler, coords);
uchar rbin = floor(sample.x * 255.0f);
uchar gbin = floor(sample.y * 255.0f);
uchar bbin = floor(sample.z * 255.0f);
rOutput[rbin]++;
gOutput[gbin]++;
bOutput[bbin]++;
}
Run Code Online (Sandbox Code Playgroud)
当我在2100 x 894图像(1,877,400像素)上运行时,当我总结每个通道的直方图值时,我倾向于只能看到记录的1,870,000个总值.每次都是不同的数字.我确实期待这一点,因为偶尔两个内核可能从输出数组中获取相同的值并递增它,有效地取消了一个增量操作(我假设?).
1,870,000输出用于{1,1}工作组大小(如果我没有另外指定,则默认设置似乎).如果我强制像{10,6}那样强大的工作组大小,我的直方图中的总和会大得多(与工作组大小的变化成比例).这对我来说似乎很奇怪,但我猜测会发生什么是组中的所有工作项同时增加输出数组值,所以它只算作一个增量?
无论如何,我在规范中读到OpenCL没有全局内存同步,只使用其__本地内存在本地工作组内同步.nVidia的直方图示例将直方图工作量分解为一堆特定大小的子问题,计算它们的部分直方图,然后将结果合并为一个直方图.对于任意大小的图像来说,这似乎都不是很好.我想我可以用虚拟值填充图像数据......
作为OpenCL的新手,我想我想知道是否有更简单的方法来做到这一点(因为它看起来应该是一个相对简单的GPGPU问题).
谢谢!
我正在开发一个允许在Web服务器上上传和存储大文件的应用程序.目前我正在使用PHP通过http处理POSTed文件.我有我的php.ini设置:
upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 128M
max_input_time = 6000
max_execution_time = 6000
Run Code Online (Sandbox Code Playgroud)
似乎没有为LimitRequestBody设置任何apache指令.我使用APC来跟踪文件上传进度.由于某种原因,文件上传始终在50M时完全停止.
我知道http不是文件上传最有效的解决方案,但这个应用程序需要用户友好,我知道ftp存在防火墙问题.
我想知道是否有人能给我一些关于什么是在50M时停止下载的建议?它必须是某种配置设置.
另外,还有其他方法我应该考虑使用javascript/PHP和http进行文件上传.我已经研究过java applet并使用flash.可能会使用swfuploader,但如果它的服务器配置导致我的上传通过http失败,我真的不知道java applet或flash uploader是如何解决的.
我应该注意到,我希望能够提出一个解决方案,允许我在某个时候上传非常大的1 GB文件.
我使用非常简单的PHP来接收文件
$uploaddir = '/'.$_POST['upload_directory'].'/';
$uploadfile = $uploaddir . basename($_FILES['file']['name']);
if (is_uploaded_file($_FILES['file']['tmp_name'])) {
if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) { some success code; }
Run Code Online (Sandbox Code Playgroud)
显然有一点比这更多,但这是我如何处理上传的要点.
即使只是做最基本的视频流也会导致内存泄漏.
cvNamedWindow("1",0);
CvCapture *fc = cvCaptureFromCAM(0);
IplImage *frame = NULL;
CvSize frameSize;
frameSize.height = cvGetCaptureProperty(fc, CV_CAP_PROP_FRAME_HEIGHT);
frameSize.width = cvGetCaptureProperty(fc, CV_CAP_PROP_FRAME_WIDTH);
while (1) {
IplImage *wrkImage = NULL;
frame = cvQueryFrame(fc);
if (!frame)
break;
wrkImage = cvCreateImage(frameSize, IPL_DEPTH_8U, 3);
cvCopy(frame, wrkImage, NULL);
cvShowImage("1", wrkImage);
char c = cvWaitKey(33);
if (c == 27) {
break;
}
cvReleaseImage(&wrkImage);
}
Run Code Online (Sandbox Code Playgroud)
显然根据"学习OpenCV"这本书,我不应该释放"框架",因为它是由openCV管理的,我可以"如果我这样做就会遇到问题".如果我在调用cvQueryFrame后释放帧指针,确实会导致问题.本书还建议将cvQueryFrame指向的图像复制到其他地方,因为cvQueryFrame可能会重复地回收相同的内存块.因此我在每个帧周期结束时释放wrkImage.程序在几分钟后崩溃,并像疯了一样泄漏记忆!让我相信一些重要的事情就像整个画面一样被泄露.我想知道是否有人在Mac上使用OpenCV 2.1获取视频内容,并且发现这也是一个问题.或者,如果有人能在我的代码中看到一个漏洞,我就错过了.
任何来自OpenCV大师的建议都会非常感激!
编辑:仔细踩过程序并检查内存后,我怀疑问题出在cvShowImage()上.cvShowImage似乎分配了一个永远不会被回收的帧的内存.然后发现这个链接 OpenCV cvShowImage Memory Leaks OSX似乎同意我的怀疑.可能在这里接近解决方案......很高兴看到我不疯狂!
更新:Macports OpenCV现在已经很好了(现在已经有几个月了.我想我应该在这里发帖,这样人们就不会因为他们的OpenCV构建/安装使用macport而气馁.Macports是安装OpenCV的好方法.
是否有内置的方式向用户显示他们已获得游戏中心成就的通知?与通过身份验证时出现的通知类似?
当我完成我的成就并且在我的游戏中没有看到通知时,我感到很惊讶.
谢谢!
如果我对一些空闲内存有空*并且我知道至少有sizeof(T)可用,有没有办法在内存中的那个位置创建一个T类型的对象?
我只是要在堆栈上创建一个T对象并将其存储起来,但似乎必须有更优雅的方法来实现它?
仅在iOS 5中,我正在处理的应用程序似乎在异步发送大量请求时丢弃请求.大意义仍然相当小 - 现在用30测试
每个请求都使用它自己的NSURLConnection,并且预计会相对快速地返回(即300 ms - 2s).我们还保持一个连接长时间打开.
似乎每个第5个连接都无法离开设备.它当然永远不会到达服务器,使用Charles的网络调试甚至不会显示请求.
我想知道是否有人知道同时打开的NSURLConnection对象和活动请求数量的限制?
值得注意的是,我们在iOS 4中没有看到这个问题.似乎如果我们终止了我们的长期连接,那么我们就不会再丢弃每个第5个请求了.
使用display:none隐藏Java applet会导致firefox杀死applet,直到它再次可见.如果你将applet放在视图之外,它似乎也会杀死applet.位置:绝对; 左:-9999; 使用可见性:隐藏; 将隐藏applet而不会将其删除,但是applet仍占用布局中的空间,这对我的应用程序不起作用.有没有人知道一个解决方法,以防止Firefox通过显示或负位置偏移隐藏杀死Java小程序?
用法是一个java上传小程序,我想在上传过程中隐藏它而不会中断上传.
我正在接受一个Qt应用程序中没有类型错误的禁止声明.问题是我已经包含了声明该类的头文件.据我所知,它应该被定义为一种类型.我也尝试了前向声明,但是我想在这个文件中使用类的方法,所以我需要整个头文件.码:
Shapes.h
#ifndef SHAPES_H
#define SHAPES_H
#include "Colors.h"
#include <QPoint>
#include "glwidget.h"
//class GLWidget;
class Shape
{
public:
virtual void draw();
};
class Rectangle : public Shape
{
public:
Rectangle(GLWidget *w, QPoint tl, QPoint br);
virtual void draw(){
// top horizontal
for(int i = topLeft.x(); i < btmRight.x(); i++){
glWidget->setPixel(i,topLeft.y(), color);
}
}
private:
QPoint topLeft,btmRight;
GLWidget *glWidget; /**** This is the Error line ****/
RGBColor color;
};
#endif // SHAPES_H
Run Code Online (Sandbox Code Playgroud)
glwidget.h:
#ifndef AGLWIDGET_H
#define AGLWIDGET_H
#include <QGLWidget>
#include "Colors.h" …Run Code Online (Sandbox Code Playgroud) 我有一个大小为N x N的二维数组(实际上是一个图像).我需要找到数组中M个最大值的索引(M << N×N).线性化指数或2D坐标都很好.数组必须保持完整(因为它是一个图像).我可以为临时制作副本,但对数组进行排序会使索引陷入困境.
我对完整的数组传递很好(即O(N ^ 2)很好).任何人都有一个很好的算法,尽可能有效地做到这一点?
c++ ×5
c ×3
ios ×2
.net ×1
algorithm ×1
applet ×1
arrays ×1
c# ×1
caching ×1
cocoa ×1
css ×1
file ×1
firefox ×1
gpgpu ×1
http ×1
iphone ×1
java ×1
json.net ×1
memcpy ×1
memory-leaks ×1
objective-c ×1
opencl ×1
opencv ×1
optimization ×1
php ×1
plugins ×1
pointers ×1
qt ×1
sizeof ×1
sorting ×1
upload ×1
xcode ×1
xcode4 ×1