7 dépôts
Techniques for offloading heavy processing to background threads to prevent UI freezing.
Distinct from Multi-threaded Command Encoders: None of the candidates focus specifically on the relationship between multi-threading and UI responsiveness; they focus on memory or agent threads.
Explore 7 awesome GitHub repositories matching user interface & experience · Responsive Interface Threading. Refine with filters or upvote what's useful.
LearningNotes est une base de connaissances technique et un guide d'étude d'ingénierie axé sur les internes du framework Android, l'architecture système et l'optimisation des performances mobiles. Il sert de référence pour analyser la séquence de démarrage d'Android, l'amorçage des processus et l'initialisation des services système. Le projet fournit des guides détaillés sur les performances mobiles, notamment des stratégies pour réduire les empreintes mémoire, identifier les fuites de mémoire et optimiser le décodage d'image. Il couvre en outre la communication inter-processus Android utilisant AIDL et le pilote de noyau Binder, ainsi que des manuels d'architecture logicielle pour découpler la logique métier des interfaces utilisateur via des modèles comme MVVM et MVP. Au-delà du développement mobile, le dépôt inclut une base de connaissances en informatique pour la préparation aux entretiens techniques, couvrant les structures de données, les algorithmes et les concepts de système d'exploitation. Il propose également une référence pratique pour le contrôle de version Git, détaillant la gestion des dépôts, la synchronisation et les flux de travail de branchement.
Offloads expensive computations and network requests to background threads to maintain interface responsiveness.
wxWidgets is a C++ UI toolkit and cross-platform GUI framework used to develop desktop applications for Windows, macOS, and Linux. It functions as a native widget wrapper, providing an abstraction layer that maps a single set of API calls to the native interface elements of different platforms. The framework allows for the creation of native graphical user interfaces by utilizing the host operating system's own controls and APIs. This ensures that applications maintain a native look and feel across various operating systems while using a consistent codebase. Beyond interface development, the
Runs background tasks and concurrent operations specifically to keep the graphical user interface responsive.
Grafika est une collection d'implémentations de référence et d'outils de benchmarking pour la plateforme Android. Il fournit des démonstrations techniques pour valider les cycles de vie de la caméra, les performances GPU et les configurations de codecs multimédias, incluant une suite d'exemples OpenGL ES et une application de référence graphique. Le projet se distingue par des outils spécialisés pour mesurer les performances graphiques, tels que des benchmarks pour les vitesses de téléchargement de textures et la latence de lecture de pixels. Il implémente également des modèles spécifiques axés sur le matériel, tels que l'utilisation de buffers circulaires pour la capture vidéo continue et l'utilisation d'affichages virtuels pour l'enregistrement d'écran à l'échelle du système. Le dépôt couvre un large éventail de capacités multimédias et graphiques. Cela inclut le rendu caméra-vers-texture pour la manipulation en temps réel, l'utilisation de threads de rendu dédiés pour des interfaces réactives, et diverses méthodes de lecture vidéo utilisant les couches de compositeur système. Il aborde en outre le traitement vidéo via l'enregistrement simultané de framebuffer et le décodage multi-flux.
Offloads graphics processing and surface management to a background thread to ensure the main user interface remains responsive.
vcmi est un moteur de jeu open source pour Heroes of Might and Magic III qui recrée le gameplay, la logique et le rendu du jeu de stratégie original. Il sert de runtime de jeu multiplateforme prenant en charge Windows, Linux, macOS, Android et iOS, fournissant un simulateur de stratégie au tour par tour pour la navigation sur carte du monde stratégique et le combat tactique. Le projet est construit comme un framework de jeu moddable, présentant un système de modding piloté par les données et une intégration de script Lua en bac à sable (sandboxed). Ceux-ci permettent la définition d'une logique de gameplay personnalisée, d'effets de sorts et l'ajout de nouvelles factions, personnages et ressources via des fichiers de configuration externes et une validation de schéma. Le moteur inclut un synchroniseur d'état multijoueur qui coordonne les tours simultanés et les mises à jour d'état du jeu entre les clients via une sérialisation binaire. Il incorpore également une intelligence artificielle intégrée pour la simulation de stratégie, un système dédié de création et de génération de cartes, et des outils pour les surcharges de ressources et la localisation. Le logiciel prend en charge les configurations de build multiplateformes et fournit des outils pour extraire les données de jeu et déboguer les états de jeu.
Offloads computationally heavy simulations to background threads to ensure the user interface remains responsive.
Simpl est une bibliothèque d'exemples HTML, CSS et JavaScript qui fournit une collection de démonstrations fonctionnelles minimales des technologies web fondamentales et des API natives du navigateur. Elle sert d'implémentation de référence et de galerie de modèles pour le développement frontend, offrant des exemples pratiques sur la façon d'implémenter des fonctionnalités web courantes. Le projet présente un large éventail de capacités du navigateur, notamment la communication web en temps réel via WebSockets et WebRTC, des techniques de conception web responsive pour des mises en page adaptatives, et l'implémentation de flux de travail hors ligne utilisant des service workers. Il fournit également des démonstrations pour le stockage côté client utilisant IndexedDB et des magasins clé-valeur basés sur le navigateur. La bibliothèque couvre une large surface de capacités web, notamment l'intégration matérielle avec les capteurs d'appareils et la géolocalisation, la capture et la lecture multimédia avancées pour l'audio et la vidéo, et l'utilisation du canvas pour le rendu graphique en deux et trois dimensions. Les domaines supplémentaires incluent la manipulation de données, la programmation asynchrone et l'utilisation des API du navigateur pour surveiller les performances et la connectivité réseau.
Run heavy computations in a separate thread to prevent processing delays and keep the user interface responsive.
Keras-js est un moteur d'inférence JavaScript et un framework de machine learning basé sur le navigateur conçu pour exécuter des réseaux neuronaux Keras pré-entraînés. Il permet l'inférence de modèle côté client dans les navigateurs web ou les environnements Node.js sans l'exigence d'un serveur backend. La bibliothèque utilise un accélérateur de tenseur WebGL pour mapper les opérations mathématiques vers le processeur graphique pour l'accélération matérielle. Pour maintenir la réactivité de l'interface utilisateur pendant les calculs lourds, elle incorpore un runtime d'inférence web worker qui exécute le traitement du réseau neuronal dans des threads en arrière-plan. Le système prend en charge le chargement de modèles via des fichiers de configuration JSON et des tenseurs de poids. Il gère les grands tableaux numériques en utilisant le stockage de texture WebGL pour faciliter l'accès mémoire à haute vitesse pendant l'exécution des tenseurs.
Offloads heavy neural network computations to background threads to prevent the browser interface from freezing.
OBS est une suite logicielle professionnelle conçue pour le streaming vidéo en direct et l'enregistrement. Elle fonctionne comme une plateforme de production complète qui capture, mixe et diffuse du contenu audio et vidéo de haute qualité vers diverses plateformes en ligne ou vers un stockage local. Le logiciel utilise une architecture modulaire permettant l'intégration d'extensions tierces, offrant aux utilisateurs la possibilité de personnaliser leur environnement de production. Il dispose d'un système de composition par graphe de scène qui organise plusieurs sources visuelles et audio dans une mise en page unifiée, soutenu par un pipeline de mixage audio en temps réel et un moteur de traitement multi-threadé pour maintenir les performances lors de diffusions complexes. La plateforme offre des capacités étendues pour l'enregistrement d'écran et la production vidéo professionnelle. Elle intègre un encodage accéléré par le matériel et une interopérabilité directe avec le pipeline graphique pour traiter efficacement les données multimédias brutes, garantissant une transmission fluide et une sortie de haute qualité pour les sessions de streaming intensives.
Offloads heavy video encoding and audio mixing to background threads to maintain smooth user interface responsiveness.