XGetImage需要大量的时间来运行

XGetImage需要大量的时间来运行,第1张

概述XGetImage需要大量的时间运行

XGetimage需要3-4秒才能执行并完全冻结X11

display *display; display = XOpendisplay(NulL); if (!display) {fprintf(stderr,"unable to connect to display");return 7;} Window w; int x,y,i; unsigned m; Window root = XDefaultRootwindow(display); if (!root) {fprintf(stderr,"unable to open rootwindow");return 8;} //sleep(1); if(!XqueryPointer(display,root,&root,&w,&x,&y,&i,&m)) { printf("unable to query pointern"); return 9;} XImage *image; XWindowAttributes attr; XGetwindowAttributes(display,&attr); image = XGetimage(display,attr.wIDth,attr.height,AllPlanes,XYpixmap); XClosedisplay(display); if (!image) {printf("unable to get imagen"); return 10;}

在Xorg日志中:

[ 13234.693] AUDIT: Thu Jan 7 20:12:13 2016: 3856: clIEnt 45 connected from local host ( uID=500 gID=500 pID=12993 ) Auth name: MIT-MAGIC-cookie-1 ID: 153 [ 13238.774] AUDIT: Thu Jan 7 20:12:18 2016: 3856: clIEnt 45 disconnected

time: real 0m4.080s user 0m0.002s sys 0m0.007s

理想情况下,我希望这个函数在不到0.1秒的时间内运行

内存映射内核空间的解剖是如何的

multithreading不利用多核心?

在VirtualBox中的Debian上调用socket()时发生错误97

为什么在windows上调用MinGW编译函数(不加载库)时会得到UnsatisfIEdlinkError?

在Vista上调用RPC调用时,“ *** 作不受支持”

我在哪里可以findsql Server版本的友好的string?

windows Phone 8.1仅绑定“左”边距属性

这是“现代”的消息框UI在Qt中可用吗? 还是纯粹的windows API?

Pcap不完整types

如何重新使用设置元素的向量?

XYpixmap是一个非常专业的格式,没有太多的用途。 几乎总是应该使用Zpixmap 。

XYpixmap 平面地工作 。 这是什么意思? 取每个像素的位0,并将所有这些位紧紧地包装在一个unsigned int的数组中。 这就是你的飞机0.然后把每个像素的位1,并将所有这些位打包在一个数组中。 那是你的飞机1.然后把每一个像素的位2

Framebuffer __________________________________________________________________ / Pixel 0 Pixel 1 Pixel 2 [0][1][2][3][4][5][6][7] [0][1][2][3][4][5][6][7] [0][1][2].... | | | | +------------------------+ | | | | | | +--------------------------------------------------+ | | | vvv [0][0][0]..... (Plane 0) | | [1][1][1].... | Result (Plane 1) | .... | [7][7][7].... | (Plane 7) | /

如果你的framebuffer是这样存储的,大多数现代硬件就是这种情况,这是很多的 *** 纵!

图片显示了8位像素,但对于其他任何深度都是一样的。

另一方面, Zpixmap将整个像素Zpixmap到一个数组中:

Framebuffer __________________________________________________________________ / Pixel 0 Pixel 1 Pixel 2 [0][1][2][3][4][5][6][7] [0][1][2][3][4][5][6][7] [0][1][2].... | | | | | | | | | | | | | | | | | | | vvvvvvvvvvvvvvvvvvv [0][1][2][3][4][5][6][7] [0][1][2][3][4][5][6][7] [0][1][2].... _____________________________________________________________________ Result

这是简单的直接复制,应该是非常快的。

总结

以上是内存溢出为你收集整理的XGetImage需要大量的时间来运行全部内容,希望文章能够帮你解决XGetImage需要大量的时间来运行所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1155180.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存