1

Dans le gestionnaire de progs, sous XP
(ctrl-alt-suppr smile)
il est possible de changer la priorité d'un processus...
est-ce que cela permet de demander à l'OS de lui accorder plus de temps... et donc qu'il tournerait plus vite ?

si oui, est-ce possible de changer ça de l'intérieur même du programme ?
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

2

Je pense que oui, il tournerait plus vite.
Mais probablement non, tu ne pourras probablement pas changer la priorité à l'intérieur du programme même pour des raisons de sécurité.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3

arf sad

winamp le permet, il me semble...
mais il utilise peut-être un "sous-programme"..

et est-ce q'il ne serait pas possible de le faire à partir d'un autre programme, que mon prog principal appellerait, dans ce cas ?
(je serai pas contre le fait que ça tourne un peu plus vite, même si c pas super propre de "tricher" de la sorte grin)
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

4

Si si on peut le faire simplement...


SetPriorityClass



' ******** Code Start ********
'This code was originally written by Dev Ashish.
'It is not to be altered or distributed,
'except as part of an application.
'You are free to use it in any application,
'provided the copyright notice is left unchanged.
'
'Code Courtesy of
'Dev Ashish
'
' function returns a handle to an existing process object
Private Declare Function apiOpenProcess _
Lib "kernel32" Alias "OpenProcess" _
(ByVal dwDesiredAccess As Long, _
ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) _
As Long

' function sets the priority class for the specified process.
' This value together with the priority value of each thread
' of the process determines each thread's base priority level.
Private Declare Function apiSetPriorityClass _
Lib "kernel32" Alias "SetPriorityClass" _
(ByVal hProcess As Long, _
ByVal dwPriorityClass As Long) _
As Long

' function returns the priority class for the specified process.
Private Declare Function apiGetPriorityClass _
Lib "kernel32" Alias "GetPriorityClass" _
(ByVal hProcess As Long) _
As Long

' retrieves the identifier of the thread that created the specified
' window and, optionally, the identifier of the process
' that created the window.
Private Declare Function apiGetWindowThreadProcessId _
Lib "user32" Alias "GetWindowThreadProcessId" _
(ByVal hWnd As Long, _
lpdwProcessId As Long) _
As Long

' closes an open object handle.
Private Declare Function apiCloseHandle _
Lib "kernel32" Alias "CloseHandle" _
(ByVal hObject As Long) _
As Long


Private Const PROCESS_QUERY_INFORMATION = &H400
Private Const PROCESS_SET_INFORMATION = &H200

' Win2000: Indicates a process that has priority above
' IDLE_PRIORITY_CLASS but below NORMAL_PRIORITY_CLASS.
Public Const BELOW_NORMAL_PRIORITY_CLASS = &H4000

' Win2000: Indicates a process that has priority above
' NORMAL_PRIORITY_CLASS but below HIGH_PRIORITY_CLASS.
Public Const ABOVE_NORMAL_PRIORITY_CLASS = &H8000
' Win2000 end

' Indicates a normal process with no special scheduling needs.
Public Const NORMAL_PRIORITY_CLASS = &H20

' Indicates a process whose threads run only when the system is
' idle and are preempted by the threads of any process
' running in a higher priority class.
Public Const IDLE_PRIORITY_CLASS = &H40

' Indicates a process that performs time-critical tasks that
' must be executed immediately for it to run correctly.
' The threads of a high-priority class process preempt the threads
' of normal or idle priority class processes.
Public Const HIGH_PRIORITY_CLASS = &H80

' Indicates a process that has the highest possible priority.
' The threads of a real-time priority class process preempt the
' threads of all other processes, including operating system
' processes performing important tasks.
Public Const REALTIME_PRIORITY_CLASS = &H100

Function fChangeAccessPriority(lngPriority As Long) As Boolean
' -------------------------------
' NT / WIN2000 ONLY
' -------------------------------
' Changes Access's priority under NT
' MAKE SURE YOU READ AND UNDERSTAND THE WARNINGS
'
On Error GoTo ErrHandler
Dim lpProcessID As Long
Dim hProcess As Long
Dim lngRet As Long

' Get ProcessID for Access
Call apiGetWindowThreadProcessId(hWndAccessApp, lpProcessID)
' Get a handle to the current process
hProcess = apiOpenProcess( _
PROCESS_QUERY_INFORMATION Or _
PROCESS_SET_INFORMATION, _
False, _
lpProcessID)
If Not hProcess = 0 Then
' Get the current Priority
lngRet = apiGetPriorityClass(hProcess)
' If the priority specified is not the same as
' what's returned by GetPriorityClass
If Not lngRet = lngPriority Then
' then attempt to set the new priority for the process
lngRet = apiSetPriorityClass(hProcess, lngPriority)
fChangeAccessPriority = Not (lngRet = 0)
Else
' Specified priority is the same as the current
' priority, so no need to call the API function
fChangeAccessPriority = True
End If
End If
' close the handle
Call apiCloseHandle(hProcess)
ExitHere:
Exit Function
ErrHandler:
fChangeAccessPriority = False
Resume ExitHere
End Function
' ********* Code End ***********



Source : http://www.mvps.org/access/api/api0059.htm
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

5

merci smile
mais c du vb, non ?

je connais po le vb sad
et je code en C++
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

6

Ce ne sont que des appels API Win32, c'est trivial à traduire en C++.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

j'en ai parlé à un pote, et il m'a renvoyé vers la doc de MSDN smile
(je l'ai plus chez moi, alors le week-end dernier je pouvait pas trouver dedans... et j'ai posé la quesiton au retour du week-end)

à priori, il me faut utiliser
GetCurrentProcess pr obtenir le handle du process, puis
SetPriorityClass(HANDLE..., DWORD)
avec le handle récupéré au dessus, et en DWORD la priorité que je veux smile

je v tester ça dnas la soirée.
en tout cas, merci qd même smile
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

8

la doc msdn intégrale ici : http://msdn.microsoft.com

9

g lu que y'avait des risques à changer la priorité d'un process...


Prise de tête: PhD dans la mire.

------------------------------------------------------------------------------------
Mon site TI 83+ et 83+SE (mort)
Le forum TI 83+ de yAronet !!! (rattaché au site..)

10

bah ouais si tu laisses un process déjà gourmand en ressources passer en top priorité, tu risque de planter car il peut passer devant le process système...
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

11

ben, si ce que je met en haute priorité dure longtemps, j'ai win qui rame, la musique de winamp qui saccade à mort...
(par exemple, en appellant 100 fois ma fonction qui est en haute priorité)

mais si je ne l'appelle qu'une seule fois, on ne ressent pas de pb ailleurs.

(en priorité normale, ma fonction met enntre 50 et 70 millisecondes selon les fois... en priorité haute, elle en met 50 smile)
(m'enfin, avec un os multi-tache, c pas terrible non plus pr tester les durées d'exécution)

(et je précise que j'ai optimisé du plus que j'ai pu avant d'utiliser cette astuce : il y a quelque temps, ma fonction mettait 3000 millisecondes (3 secondes) à s'exécuter...
=> changement d'algos, élimination du max d'allocations/libérations mémoire, intégrations de boucles les unes dans les autres, ...)
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

12

bein avec sdl il me semble qu'il y a une fonction qui permet de recuperer "toutes" les ressoures possible donc si ca t'interrese regarde les sources...
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

13

oué, mais je veux qd même en laisser un peu au reste smile
et puis, je pense avoir atteint une vtesse satisfaisante...

(de toute façon, je pourrait monter le process en "temps réel" plutôt que "haut", mais c fortement déconseillé par la doc
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

14

fait gaffe sur la priorité ...

> j'ai voulu faire ca une fois en manuel sur un programme qui demandait de grosses ressources proco ... ca a planté !

15

squale92> pour l'avaoir essayé avec WinAmp, je déconseille très fortement la priorité "Temps réel", surtt si t'as fait en sorte que ton programme tourne en boucle continue...

En gros, si tu passe en tps réel avec WAmp et que t'as eu le malheure de vouloir la chanson en boucle, tu disposeras d'une fraction de seconde (quand WA rembobinera) pour placer ta flèche de souris sur le (tout petit) bouton de fermeture du programme...et encore un cycle complet pour cliquer dessus....

Vu que j'écoutais Echoes (Pink Floyd, pour les non initiés) de cette manière (+20min), fallait pas être pressé...ça m'a pris 2 jours pr récupérer mon ordi..


Prise de tête: PhD dans la mire.

------------------------------------------------------------------------------------
Mon site TI 83+ et 83+SE (mort)
Le forum TI 83+ de yAronet !!! (rattaché au site..)

16

2 jours??? Le bouton "reset", c'est pour les chiens?
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

17

1- y'a pas ce bouton sur mon ordi, mais un équivalent tongue
2- pas question de couper mon ordi sans avoir sauvegardé le reste..
3- t vraiment un bourrin si t'as pas la patience d'attendre....j'aurais pas cru ça de toi, Kevin...


Prise de tête: PhD dans la mire.

------------------------------------------------------------------------------------
Mon site TI 83+ et 83+SE (mort)
Le forum TI 83+ de yAronet !!! (rattaché au site..)

18

[ftp83plus] a écrit :
1- y'a pas ce bouton sur mon ordi, mais un équivalent tongue

En tout cas, une chose qui sert toujours, c'est de débrancher la prise. smile
2- pas question de couper mon ordi sans avoir sauvegardé le reste..

Il fallait sauvegarder les données avant d'ouvrir WinAmp...

Et même le "3-finger-salute" ne faisait rien? Ça permet de virer les applications qui bloquent le CPU normalement.
3- t vraiment un bourrin si t'as pas la patience d'attendre....j'aurais pas cru ça de toi, Kevin...

Ben, j'ai autre chose à faire que d'attendre 2 jours que la souris se bouge, moi. roll
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

19

Kevin Kofler a écrit :
En tout cas, une chose qui sert toujours, c'est de débrancher la prise. smile
Bourrin.

Il fallait sauvegarder les données avant d'ouvrir WinAmp...
J'prévoyais pas ça, moi...
Et même le "3-finger-salute" ne faisait rien? Ça permet de virer les applications qui bloquent le CPU normalement.
Ben non, pisque ce process n'était pas prioritaire tongue


Prise de tête: PhD dans la mire.

------------------------------------------------------------------------------------
Mon site TI 83+ et 83+SE (mort)
Le forum TI 83+ de yAronet !!! (rattaché au site..)

20

t'aurais mis - de temps a refaire ce ki etait pas sauvegarde que d'attendre 2 j gol
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

21

[ftp83plus] a écrit :
>Il fallait sauvegarder les données avant d'ouvrir WinAmp... J'prévoyais pas ça, moi...

Ça devrait être un réflexe: avant d'ouvrir quoi que ce soit, on enregistre ses données. Et même si on n'ouvre rien. Moi, en général, je sauvegarde une fois par minute en moyenne.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

22

parano ? non mais quelle idée tongue

enfin j'économise mon temps avec ça, vu que je craisn pu les coupures de jus


Prise de tête: PhD dans la mire.

------------------------------------------------------------------------------------
Mon site TI 83+ et 83+SE (mort)
Le forum TI 83+ de yAronet !!! (rattaché au site..)

23

t'a un stockeur de jus? (je me souviens plus du nom du truc!)
life is short, but love is always over the morning... (extraits des lyrics du dernier titre de mon premier album)
venez sur http://www.compression-image.fr.st le site des TPE de terminale!

24

[ftp83plus]
a écrit : enfin j'économise mon temps avec ça, vu que je craisn pu les coupures de jus

Ça va très vite de taper [Ctrl]+[S]. smile
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

25

je comptais poas le mettre en temps réel (je répind seulement maintant, car pas eu accès au net depuis lundi)
(et ça tourne pas en boucle smile... juste une fois de temps en temps (enfin, ça peut monter à plusieurs fois par seconde qd même)

avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

26

squale92, au lieu de monter la priorité d'un prog, il me semble moins dangereux de descendre celle de presque tous les autres.

27

pas con...


et une "batterie de sauvegarde " ça s'appelle un onduleur
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

28

nEUrOne> heu... oué, pas bête smile

arf, fo que je me récupére mes cd avec MSDN dessus, pr lire la doc à ce sujet...
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

29

Tu peux la lire online: http://msdn.microsoft.com.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

30

oué, mais avec mon 56k et forfait pas extensible, c pas le pieds
et j'aiem pas trop treiner sur le site à MS
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall