日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

微軟WSL的默認(rèn)終端輸入為什么如此順滑

汽車玩家 ? 來(lái)源:開(kāi)源中國(guó) ? 作者:局長(zhǎng) ? 2019-12-25 09:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一名開(kāi)發(fā)者(下用Nick代稱)在Windows Terminal的GitHub repo中發(fā)表了一個(gè)不是反饋問(wèn)題的issue——他只是好奇該終端擁有這種如此順滑輸入的效果是如何實(shí)現(xiàn)的。

Nick覺(jué)得這種順滑感是其他Windows應(yīng)用都不具備的,甚至是最輕量的notepad.exe都未能提供這種輸入體驗(yàn)。他還問(wèn)到,這種UI增強(qiáng)功能將來(lái)是否會(huì)應(yīng)用于所有Windows應(yīng)用程序。

很快,負(fù)責(zé)此項(xiàng)目的Windows開(kāi)發(fā)團(tuán)隊(duì)成員(@miniksa)對(duì)Nick的疑問(wèn)進(jìn)行了解答。

miniksa表示,保持在WSL(Windows Subsystem for Linux)默認(rèn)終端輸入內(nèi)容的速度比其他應(yīng)用快,這實(shí)際上就是他們唯一的工作!除此之外,也可能是因?yàn)樗麄儽仨毷褂肳indows最舊和最低級(jí)別的API來(lái)完成此項(xiàng)工作。

WSL的默認(rèn)終端不像Electron等框架那樣涉及到許多其他的層或框架,它有一個(gè)并不特別的裸窗口,并且沒(méi)有任何附加組件。他們會(huì)從窗口消息(window messages)而不是某種事件框架((WPF, WinForms, UWP, Electron))來(lái)處理鍵入的內(nèi)容,而這些內(nèi)容是通過(guò)內(nèi)核傳輸過(guò)來(lái)的。接著,他們使用GDI的PolyTextOut將文本直接轉(zhuǎn)儲(chǔ)到窗口而不帶多余的裝飾。

miniksa解釋道,notepad.exe確實(shí)很輕量,不過(guò)在其窗口上也具有多個(gè)控件,并且可能在編輯控件中使用某種庫(kù)、框架來(lái)確定其文本布局(也可能正在使用其他庫(kù)或框架進(jìn)行國(guó)際化支持...),這些都使得它們的輸入速度比不上WSL默認(rèn)終端。當(dāng)然,WSL也需要進(jìn)行權(quán)衡取舍,它不像其他應(yīng)用那樣提供完全的國(guó)際化支持。

為什么要這樣做?第一,conhost.exe已十分陳舊。它必須使用所有內(nèi)容的裸機(jī)底層,因?yàn)樗窃趧?chuàng)建其他大多數(shù)框架之前創(chuàng)建的。第二,它需要保持盡可能底層的級(jí)別,而且它是用C/C++編寫的,它需要盡可能保持底層的狀態(tài)以方便提供給第三方使用。

至于其他Windows應(yīng)用是否有機(jī)會(huì)用上這種順滑的輸入效果,miniksa覺(jué)得幾乎是沒(méi)機(jī)會(huì)。這些應(yīng)用能夠以一種簡(jiǎn)單的方式用任何一門語(yǔ)言來(lái)調(diào)用一種方法和布局文本(layout text),而無(wú)需手動(dòng)計(jì)算像素或關(guān)心它們的字體該采用哪種樣式。而恰好miniksa手動(dòng)計(jì)算像素、滑動(dòng)區(qū)域和數(shù)學(xué)應(yīng)用區(qū)域等的方式正是使得WSL默認(rèn)終端輸入速度更快的原因。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微軟
    +關(guān)注

    關(guān)注

    4

    文章

    6756

    瀏覽量

    108113
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3710

    瀏覽量

    94367
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何在Windows上安裝最新的deepin 25 WSL版本

    在日常的開(kāi)發(fā)與測(cè)試中,許多用戶希望能在 Windows 環(huán)境下便捷地使用 Linux 工具鏈。此時(shí),WSL(Windows Subsystem for Linux,適用于 Linux 的 Windows 子系統(tǒng)) 便是最佳選擇。
    的頭像 發(fā)表于 05-08 14:31 ?94次閱讀
    如何在Windows上安裝最新的deepin 25 <b class='flag-5'>WSL</b>版本

    集特臺(tái)式機(jī) —— 信創(chuàng)時(shí)代的高可靠國(guó)產(chǎn)計(jì)算終端

    終端
    國(guó)產(chǎn)計(jì)算機(jī)小秦
    發(fā)布于 :2026年03月30日 09:44:12

    rtt studio中 終端窗口輸入不了命令,是沒(méi)打開(kāi)什么東西嗎?

    studio新建的工程,控制臺(tái)程序能正常運(yùn)行終端輸出了RTT的logo,想輸入list_device等命令,無(wú)法輸入,是哪兒配置問(wèn)題?還是要自己寫命令頂層?
    發(fā)表于 09-24 06:04

    rt thread 的Finsh終端啟用后,怎樣才能在函數(shù)里讀取終端輸入的字符串?

    如題,AI的建議是使用rt_kscanf,但是并沒(méi)有查詢到實(shí)際有這個(gè)函數(shù)。 本意是想校準(zhǔn)一系列的值,在函數(shù)中通過(guò)終端輸入來(lái),輸入校準(zhǔn)值。 但shell.c文件里在shell線程中已經(jīng)調(diào)用了finsh_getchar()
    發(fā)表于 09-22 06:24

    keil無(wú)法寫入wsl文件怎么解決?

    使用rt-thread的容器開(kāi)發(fā),想要在windows上打開(kāi)并編譯保存在wsl2中的項(xiàng)目,遇到如下錯(cuò)誤 Could not create/access path '
    發(fā)表于 09-16 06:04

    【Banana Pi BPI-RV2開(kāi)發(fā)板試用體驗(yàn)】配置WSL網(wǎng)絡(luò)環(huán)境訪問(wèn)Github

    的openWRT編譯環(huán)境是WSL2,宿主OS為windows11。具體網(wǎng)絡(luò)IP如下: WLAN的IP是192段,WSL自己弄了個(gè)172的IP,注意不是127.0.0.1。 二、配置 (一)Win側(cè)配置 只需要
    發(fā)表于 07-19 18:14

    yolov8怎么在wsl中搭建呢?

    純小白,yolov8怎么在wsl中搭建呢?一直報(bào)錯(cuò)且無(wú)法安裝pip包
    發(fā)表于 07-11 07:37

    淺談wsl --update` 命令行選項(xiàng)無(wú)效的解決方案

    PS C:\Users\Administrator> wsl --update >> 命令行選項(xiàng)無(wú)效: --update
    的頭像 發(fā)表于 06-27 10:28 ?1.2w次閱讀

    WSL 1 和 WSL 2 的區(qū)別是什么

    PS C:\Users\Administrator> wsl --set-default-version 2 >> 有關(guān)與 WSL 2 的主要區(qū)別的信息,請(qǐng)?jiān)L問(wèn) https://aka.ms/wsl2
    的頭像 發(fā)表于 06-27 10:25 ?3160次閱讀

    rt thread的Finsh終端啟用后,怎樣才能在函數(shù)里讀取終端輸入的字符串?

    如題,AI的建議是使用rt_kscanf,但是并沒(méi)有查詢到實(shí)際有這個(gè)函數(shù)。 本意是想校準(zhǔn)一系列的值,在函數(shù)中通過(guò)終端輸入來(lái),輸入校準(zhǔn)值。 但shell.c文件里在shell線程中已經(jīng)調(diào)用了finsh_getchar()
    發(fā)表于 06-11 07:39

    岳冉智能手持終端掃碼功能演示 #智能手持終端

    手持終端
    yueranxinxi
    發(fā)布于 :2025年05月13日 12:00:06

    岳冉掃描打印一體手持終端高效移動(dòng)辦公 #手持終端 #PDA

    終端
    yueranxinxi
    發(fā)布于 :2025年05月12日 17:34:16
    高淳县| 蓝田县| 湖北省| 淳安县| 大足县| 苗栗县| 河北省| 沁源县| 临沧市| 大田县| 固始县| 嘉禾县| 杭州市| 钟山县| 舞钢市| 承德县| 施秉县| 城市| 信阳市| 德阳市| 沁水县| 田东县| 马边| 开化县| 新野县| 山东省| 乐东| 繁峙县| 大宁县| 太仆寺旗| 富民县| 岳西县| 云南省| 满洲里市| 承德县| 长顺县| 舒兰市| 姜堰市| 绥中县| 托克逊县| 广饶县|