MacOS High Sierra: Усуньте відставання під час швидкого зміни розміру вікна


2

Я стикаюся з цією проблемою з часів Ель-Капітан. В основному, коли я змінюю розмір вікна вручну, він відстає або як ви хочете його назвати. Ось це відео в режимі реального часу .

GIF уповільнюється на 50% і може показувати вказівник миші на весь перемальовування вікна, коли він обчислює макет, а потім змінює розміри вікна за допомогою змін у макеті.

enter image description here

Зверніть увагу на те, як вказівник миші веде, а вікно затримується, коли ви швидко змінюєте розмір вікна.

Мої характеристики:

Процесор: 2,5 ГГц Intel Core i5
Пам'ять: 16 ГБ 1600 МГц
Графіка: Intel HD Graphics 4000 - 1536 Мб
Диск: SSD об'ємом 250 ГБ

CPU не обмежується, коли існує лаг:

enter image description here

Хоча це не відбувається на Windows 10 (Ті ж специфікації), це все ще дійсно дратує, щоб мати справу з, і я дуже хотів би знати, чи є щось, що я можу зробити або змінити, щоб позбутися цієї проблеми ...

Питання: Чи є спосіб усунути відставання, коли швидко змінювати розміри вікна?


Якщо ви відкриваєте монітор активності, чи є якесь використання процесора, де бездіяльність становить менше 50% або тиск пам'яті (жовтий або зелений)? Будь-який з них може легко пояснити повільну реакцію, і деталі підкажуть вам причину проблеми.
bmike

Привіт @ bmike. Дякуємо за ваш коментар. Можу сказати, що середнє значення "Idle CPU%" завжди становить від 80% до 95%. Навіть роблячи важку роботу з NodeJS. Ось знімок екрана використання процесора, майте на увазі, що я зараз працюю над проектом і використовую деякі інструменти тестування NodeJS. imgur.com/bwXf7iv
Victor Warren

Так що я не думаю, що використання процесора є проблемою тут.
Victor Warren

Відповіді:


1

Ця відповідь виглядає цілком правильно, і єдине, що я міг бачити, це мати хромоване, як-небудь менше обчислювати вміст всередині кадру і просто змінювати розмір вікна і перемальовувати / перепланувати текст і вміст за меншою швидкістю.

Це схоже на навмисний компроміс - ви можете бачити, що вміст відповідає майже так само швидко, як і вказівник миші. Я не на css / html достатньо, щоб знати, якщо є підказка ви могли б вставляти, щоб сказати веб-макет, щоб не турбуватися про зміни макета так багато, і замість того, щоб чекати, щоб вибрати розмір вікна і потім оновити.

Напевно, це програмне забезпечення не оптимізовано для вашого використання. Якщо хром і сафарі і Firefox працюють однаково, можна просто побачити рішення про використання частоти кадрів CPU і cap за рахунок споживання енергії, а не для притаманних їм обмежень. Також може бути, що всі реакції та ресурси спрямовані на те, щоб зміст перемістився всередину вікна, так що ви знаєте, що ви перетягуєте і менше намагаєтеся відстежити зміну розміру вікна.

Розчленування цього було б цікавим дослідницьким проектом або, можливо, тезою для кого-небудь щодо розробки та впровадження програмного забезпечення. Який довгий спосіб сказати, я не думаю, що є просте рішення для вас, щоб зробити змістовні зміни, крім використання іншого браузера або ОС.


Вітаємо, і ще раз дякуємо за ваш коментар. Вміст відповідає так швидко, як я змінюю розмір вікна, так само, як я відчуваю від чогось, що відповідає. Я тестував це на Windows 10, а також, і не тільки вміст вікна, але сам вікно відповідає швидше і гладко. Думаю, що це працює на MacOS.
Victor Warren

Так @VictorWarren Я взагалі не сумніваюся. Я вважаю, що криві анімації відрізняються в MacOS, ніж у Windows. Якщо робити більше обчислень, щоб полегшити початок і кінець анімації, щоб зробити їх більш природними, то інший може бути просто більш стрибкоподібним і чуйним. (з ривками - швидкістю зміни прискорення протягом часу, на відміну від janky, яка була б думкою, а не вимірною характеристикою методу анімації). Швидкість анімації також може бути навмисно розформована так, щоб хром використовував менше енергії на Mac OS - вам знадобиться цей код, щоб знати в будь-якому випадку.
bmike
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.