首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >bspwm关于cygwin -慢速重绘

bspwm关于cygwin -慢速重绘
EN

Unix & Linux用户
提问于 2018-06-15 05:28:40
回答 1查看 286关注 0票数 0

我在cygwin2.10.0(0.325/5/3) (Windows 7)下编译了bspwm贴图窗口管理器,与Openbox、LXDE或fwvm相比,性能相当差。你能给我建议一下如何解决这个问题吗?

有时,我需要在windows下测试一些linux脚本和命令,并且需要多个终端窗口。在bspwm中将其放在一个窗口中是非常方便的,并允许我根据需要设置我的终端工作区。

症状:

  • 通过Shift + PgUp或PgDown在终端(Urxvt)滚动时慢重绘速度
  • 终结者速度稍快,但打字速度很慢。
  • 节点切换、桌面间跳转等命令的执行延迟约300 ms (只是猜测)。这是相当小,但它使工作流程感到不愉快。

有些应用程序需要时间来启动,即使在Openbox或Fvwm下也是如此,但是gui respone是快速的,urxvt甚至在运行大的vim文件时也是如此。

这是我的XWin启动日志:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Welcome to the XWin X Server
Vendor: The Cygwin/X Project
Release: 1.19.6.0
OS: CYGWIN_NT-6.1 CZCHOWN5022406 2.10.0(0.325/5/3) 2018-02-02 15:16 x86_64
OS: Windows 7 Service Pack 1 [Windows NT 6.1 build 7601] (Win64)
Package: version 1.19.6-2 built 2018-03-12

XWin was started with the following command line:

/usr/bin/X :0 -auth /home/marek/.serverauth.9768 

ddxProcessArgument - Initializing default screens
winInitializeScreenDefaults - primary monitor w 1920 h 1080
winInitializeScreenDefaults - native DPI x 96 y 96
[ 19542.838] (II) xorg.conf is not supported
[ 19542.838] (II) See http://x.cygwin.com/docs/faq/cygwin-x-faq.html for more information
[ 19542.838] LoadPreferences: /home/marek/.XWinrc not found
[ 19542.838] LoadPreferences: Loading /etc/X11/system.XWinrc
[ 19542.838] LoadPreferences: Done parsing the configuration file...
[ 19542.838] winDetectSupportedEngines - RemoteSession: no
[ 19543.087] winDetectSupportedEngines - DirectDraw4 installed, allowing ShadowDDNL
[ 19543.087] winDetectSupportedEngines - Returning, supported engines 00000005
[ 19543.087] winSetEngine - Using Shadow DirectDraw NonLocking
[ 19543.087] winScreenInit - Using Windows display depth of 32 bits per pixel
[ 19543.134] winWindowProc - WM_SIZE - new client area w: 1904 h: 1002
[ 19543.150] winFinishScreenInitFB - Masks: 00ff0000 0000ff00 000000ff
[ 19543.150] MIT-SHM extension disabled due to lack of kernel support
[ 19543.150] XFree86-Bigfont extension local-client optimization disabled due to lack of shared memory support in the kernel
[ 19543.150] (EE) AIGLX: No native OpenGL in modes with a root window
[ 19543.430] (II) IGLX: enabled GLX_MESA_copy_sub_buffer
[ 19543.446] (II) IGLX: Loaded and initialized swrast
[ 19543.446] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 19544.054] winPointerWarpCursor - Discarding first warp: 952 501
[ 19544.054] (--) 5 mouse buttons found
[ 19544.054] (--) Setting autorepeat to delay=500, rate=31
[ 19544.054] (--) Windows keyboard layout: "00000409" (00000409) "US", type 4
[ 19544.054] (--) Found matching XKB configuration "English (USA)"
[ 19544.054] (--) Model = "pc105" Layout = "us" Variant = "none" Options = "none"
[ 19544.054] Rules = "base" Model = "pc105" Layout = "us" Variant = "none" Options = "none"
[ 19544.725] winProcEstablishConnection - winInitClipboard returned.
[ 19544.725] winClipboardThreadProc - DISPLAY=:0.0
[ 19544.725] OS maintains clipboard viewer chain: yes
[ 19544.741] winClipboardProc - XOpenDisplay () returned and successfully opened the display.
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2018-06-28 06:15:00

速度慢是由rxvt终端仿真器造成的,特别是当它在bspwmrc文件中自动启动时。我现在使用的是xterm或终止符,bspwm是快速的。

我试着找出原因,但没有得到任何可能出现问题的信息。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/450001

复制
相关文章
重绘与回流_html回流重绘
浏览器在渲染一个页面时,会将页面分为很多个图层,图层有大有小,每个图层上有一个或多个节点。 也就是我们各种各样的Dom标签
全栈程序员站长
2022/11/01
1.4K0
重绘与回流_html回流重绘
回流重绘
HTML默认是流式布局,css与js会打破这种布局,改变DOM的几何属性与外观属性。在绘制时根据渲染树布局,再根据布局绘制,这就是回流重绘。
岳泽以
2022/11/21
6430
重排与重绘
原文地址:http://www.cun-xu.cn/index.php/2018/12/25/重排与重绘/
IMWeb前端团队
2019/12/03
1.2K0
重排与重绘
回流和重绘
我们要明确页面在文档加载完成之后到完全显示中间的过程是 根据文档生成DOM树(包括display:none的节点) 在DOM树基础上根据节点的几何属性(margin/padding/width/height等)生成render树(不包括display:none、head节点但会包含visibility:hidden节点) 在render树基础上进行进一步渲染包括color,outline等样式 reflow: 当render树中的一部分或者全部因为大小边距等问题发生改变而需要重建的过程叫做回流 rep
念念不忘
2019/03/29
8820
“重绘” 和 “重排”
重绘是指一个元素外观改变所触发的浏览器行为,大概就是外观属性的改变,像,背景颜色,等
用户3055976
2019/10/31
8060
『SD』局部重绘
SD 的局部重绘是图生图里很常用的功能。它能够局部修改图片或者删除图片里多余的功能。比如你想给自己的照片换个衣服(额,你懂的),比如你想把照片里的路人P走。这个功能可以送走一批初级美工。
德育处主任
2024/05/25
4320
『SD』局部重绘
页面优化——重绘和回流[通俗易懂]
一、写在前面 页面优化在面试的过程中经常遇到的问题,今天就来总计一下重绘和回流的问题。 二、重绘和回流是什么 我们都知道一个页面从加载到完成,首先是构建DOM树,然后根据DOM节点进行几何布局形成render树(渲染树),当渲染树构建完成后,页面就根据DOM树开始布局,渲染树也根据设置的样式渲染这些节点。 在这一过程中,比如我们删除DOM节点,修改一个元素的宽高,页面布局发生变化,DOM树也发生变化,那么肯定要重新构建DOm树,而DOM树和渲染树紧密相连,DOM树渲染完了,渲染树也会随之进行渲染,这个过程就称为回流。 在比如说,我们给一个元素修改颜色,这样的行为是不会影响页面的布局的,DOM树不会发生改变,但是颜色变了,渲染树得重新绘制,这就是重绘。 所以说回流一定会触发重绘,重绘不一定触发回流。 题外话: 1、由于display:none的元素不在页面渲染,渲染树的构建不包含这些节点。但是visibility为hidden的元素会在渲染树中。因为display为none会脱离文档流,visibility为hidden虽然看不到,但类似与透明度为0,其实还在文档流中,还是有渲染的过程。 2、尽量避免使用表格布局,当我们不给表格的td设置固定的宽度的时,一列的td的宽度会以最宽的td的宽作为渲染的标准,假设前几行的td在渲染时都渲染好了,结果下面的某行特别宽,table为了统一宽度,前几行的td会回流重新计算宽度,这是一个比较耗时的操作。 三、怎么样减少回流 回流会重构DOM树,渲染树也得重新渲染,比较麻烦,哪些行为可以引发回流,如何去避免呢? 1、DOM的删除行为 比如删除某个节点,或者给父元素插入子节点,这类操作都会触发回流。如果我们插入多个子节点的话,可以使用documentfragment。 2、几何属性的变化 比如说元素的宽度变了,border变了,字体大小变了,这种直接会引发页面的布局的改变,也会触发回流。如果我们需要改变多个属性,做好的是将这些改变定义在一个class中,直接修改class名,这样只会触发一次回流。 3、元素的位置发生改变 修改一个元素的左右margin,padding之类的操作,所以在元素位移的动画,不要更改margin之类的值,使用定位脱离文档流后进行改变位置。 4、获取文章的偏移量之类的属性 例如我们需要获取scrollTop、scrollLeft、scrollWidth、offsetTop、offsetLeft、offsetWidth、offsetHeight之类的属性的时候,浏览器为了保证值的正确性也会回流进行获取,所以如果你要不多次操作,最好取完进行缓存。 5、页面初次渲染触发回流 页面的初次渲染触发回流这样无法避免。 6、浏览器窗口尺寸的改变 resize事件的发生也会触发回流。
全栈程序员站长
2022/11/17
9630
『SD』人脸修复-局部重绘
生成半身照人像,人像占据画面的面积比较大时出图效果还行。可一旦要生成全身照,而且还是一张远景图,那脸崩的概率就会立刻提升。
德育处主任
2024/05/27
1270
『SD』人脸修复-局部重绘
浏览器的重排重绘
完整高频题库仓库地址:https://github.com/hzfe/awesome-interview
HZFEStudio
2021/09/12
1.1K0
HTML中的重绘与回流
在认识重绘和回流之前,我们先认识一下一个页面加载的时候,会发生什么?   页面加载时,生成一个DOM树,DOM Tree里包含了构成页面所有的标签。Style Sheets(CSS样式表)会生成一个Style Rules。当DOM Tree和Style Rules一起构建出了Render Tree,对于Render Tree的理解:Render Tree和DOM Tree类似,但是Render Tree能够识别样式,在Render Tree上,每一个node(节点)都有自己的Style(样式),但隐藏的节点或是不会用于显示的部分不会包含在Render Tree上。
刘亦枫
2020/03/19
1.5K0
HTML中的重绘与回流
DOM优化之重绘和回流
浏览器内核中的JS 引擎和渲染引擎是独立存在的,当我们用JS去操作DOM时,本质上是JS引擎和渲染引擎之间进行的“跨界交流”。
九旬
2020/10/23
9020
前端性能优化 | 回流与重绘
在 HTML 中,每个元素都可以理解成一个盒子,在浏览器解析过程中,会涉及到回流与重绘:
anyup
2023/11/24
2K1
前端性能优化 | 回流与重绘
MFC-4简单的窗口重绘(非部分重绘)
#include <afxwin.h> #include "resource.h" #include <afxtempl.h> //定义模板类的头文件 class MyDocument : public CDocument { public: CArray<CPoint,CPoint &> pArray;//<保存的数据类型,读取保存数据类型的返回值> void AddPoint(CPoint p) { pArray.Add(p); } CPoint GetPoint(int i) {
liulun
2022/05/09
6910
重绘和回流(Repaint & Reflow),如何优化
由于节点的几何属性发生改变或者由于样式改变而不影响布局的,称为重绘,例如outline,visibility,color,background-color等,重绘的代价是高昂的,因为浏览器必须验证DOM树上其他节点的可见性。
刘嘿哈
2022/10/25
7840
JS引发页面重排重绘的代价
示例 目标是修改div内容,3种实现方式,看下每种方式的执行时间 <html> <body> <div id="myDiv1"></div> <div id="myDiv2"></div> <div id="myDiv3"></div> <script> var times = 10000; // 方式1 console.time(1); for(var i = 0; i < times; i++) { document.getElementById('myDiv1').innerHTML += 'a'
dys
2018/04/02
1.2K0
你真的了解回流和重绘吗
回流和重绘可以说是每一个web开发者都经常听到的两个词语,我也不例外,可是一直不是很清楚这两步具体做了什么事情。最近由于部门内部要做分享,所以对其进行了一些研究,看了一些博客和书籍,整理了一些内容并且结合自己的体会,写了这篇文章,希望可以帮助到大家。
嘿嘿嘿
2018/12/25
1.3K0
浏览器渲染之回流重绘
回流和重绘是前端开发的高频词汇之一,你可以在各种面经,性能优化相关文章可以看到,但是很多都是草草带过。本文带你从浏览器渲染流程中了解回流与重绘的原理。
政采云前端团队
2021/09/30
1.7K0
浏览器渲染之回流重绘
你真的了解回流和重绘吗
最近有空对其进行了一些研究,看了一些博客和书籍,整理了一些内容并且结合一些例子,写了这篇文章,希望可以帮助到大家。
嘿嘿嘿
2018/12/19
5K4
你真的了解回流和重绘吗
什么是回流与重绘 (Reflow & Repaint)
在讨论今天的主角之前,我们要先了解一下浏览器的渲染机制。以Google,Firefox,Safari为例,Firefox 使用Geoko——Mozilla 自主研发的渲染引擎,Safari 和Chrome 都使用 webkit。
w候人兮猗
2020/12/21
8800
页面重绘和回流(重排)以及优化
1. 当render tree中的一部分(或全部)因为元素的规模尺寸,布局,隐藏等改变而需要重新构建。这就称为回流(reflow)。每个页面至少需要一次回流,就是在页面第一次加载的时候。在回流的时候,浏览器会使渲染树中受到影响的部分失效,并重新构造这部分渲染树,完成回流后,浏览器会重新绘制受影响的部分到屏幕中,该过程成为重绘。 2. 当render tree中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不会影响布局的,比如background-color。则就叫称为重绘。 回流何时发生:
windseek
2018/06/15
1K0

相似问题

重绘时屏幕闪烁

20

无法编译bspwm

10

BSPWM空白屏幕

10

bspwm开关监视器不工作

10

如何在没有compiz的linux上缩放/放大(bspwm)

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文