Bonjour,
J'ai regardé un peu la doc... Est-ce que la classe QBuffer dispose d'une fonction qui recherche dans la RAM un buffer crée par un lecteur multimédia externe à mon programme et pas forcément programmé en Qt c++ ? Si oui laquelle ?
Bonjour,
J'ai regardé un peu la doc... Est-ce que la classe QBuffer dispose d'une fonction qui recherche dans la RAM un buffer crée par un lecteur multimédia externe à mon programme et pas forcément programmé en Qt c++ ? Si oui laquelle ?
Bonjour,
J'ai l'impression que ce que vous voulez faire n'est pas possible tout court. En effet essayer d'accéder à des données en RAM qui n'appartiennent pas au programme courant est totalement exclue (le système d'exploitation nous stoppe avec une jolie segmentation fault)
Je dois dire que une solution existe: les segments de mémoire partagés. Mais c'est un cas assez précis, qui ne semble pas spécialement fait pour votre cas (à part si le programme source documente ce phénomène)
Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi
Ma page sur DVP
Mon Portfolio
Qui connaît l'erreur, connaît la solution.
Bonjour,
Tiens c'est marrant que vous parliez de mémoire partagée car je suis tombé dessus sur le net pas plus tard qu'hier.
En fait je vais essayer de faire simple avec les moyens du bord sinon je sens que je vais me casser la binetteet gratuitement en plus
Non non...
Vite fait à propos du QBuffer : en fait j'ai regardé à quoi cela servait : la première explication est que ça permet de régler le problème de 2 périphériques qui ne lisent pas les données à la même vitesse. Puis en fouillant un peu j'ai trouvé une autre explication : si on compare par exemple à un QFile, le QBuffer permet d'utliser la RAM et pas le disque dur : cela permet à long terme d'éviter d'utiliser la pointe de lecture du disque dur et donc d'éviter de l'endommager trop vite.
Bonne journée.
Certes c'est une consequence du buffer, mais pas la raison principale. L'histoire est simplement que la RAM est beaucoup plus rapide que le disque dur (ou autre peripherique). Donc si on a besoin frequement d'information qui se trouve dans un fichier ... il est preferable de faire un chargement (lecture) et de garder le contenu en memoire.
Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi
Ma page sur DVP
Mon Portfolio
Qui connaît l'erreur, connaît la solution.
Ah ok. J'imagine alors que si j'en ai besoin, je ne serai ni le premier ni le dernier à l'utiliser...
Bonjour
Et tu sais sur quel critère faire ta recherche ? tu sais comment le programme externe utilise la mémoire ? quel codage il utilise ?une fonction qui recherche dans la RAM un buffer crée par un lecteur multimédia externe
Ça me semble être très difficile de faire ça.
J'ai un doute : tu es sur ? Si on est en lecture seule ?En effet essayer d'accéder à des données en RAM qui n'appartiennent pas au programme courant est totalement exclue (le système d'exploitation nous stoppe avec une jolie segmentation fault)
J'espère que... nonAh ok. J'imagine alors que si j'en ai besoin, je ne serai ni le premier ni le dernier à l'utiliser...puisque QFile (et en fait tous les QIOdevice) ouvre par défaut en utilisant un buffer (sauf si on spécifie explicitement QIODevice::Unbuffered). Donc l'utilisation de QBuffer n'est pas nécessaire (sauf cas très spécifique)
Partager