[Java] Crypter un fichier avec le support du multi-threading?

Crypter un fichier avec le support du multi-threading? [Java] - Java - Programmation

Marsh Posté le 19-01-2007 à 00:01:25    

Bonjour
 
J'ai une class dans mon programme Java qui s'occupe de copier un fichier.
Le fichier est lu par bloc, chacun des blocs est décrypté/crypté en fonction du besoin, puis réécris dans un second fichier.
Pour profiter de l'apport de performances des CPU dualcore, je souhaiterai paralléliser cette fonction pour accélérer l'étape de décryptage.
 
Le problème c'est que je ne sais pas trop comment procéder, sachant que les blocs doivent êtres écrits dans le même ordre que celui dans lequel ils sont lu... J'arriverai bien à faire quelque chose en synchronisant les processus mais le gain de performances risque d'être minime :(
 
Si vous avez une idée voir des exemples, merci de me les indiquer :hello:

Reply

Marsh Posté le 19-01-2007 à 00:01:25   

Reply

Marsh Posté le 19-01-2007 à 08:29:55    

un process qui lit un flux, un process qui encode un flux et un pipedstream au milieu  
http://www.devx.com/tips/Tip/12982
 
ca devrait le faire

Reply

Marsh Posté le 19-01-2007 à 09:34:20    

Je ne connaissais pas, effectivement c'est une bonne idée pour passer les données entre les threads! :)
 
Après si je veux plusieurs threads de décryptage ça va être plus difficile, l'utilité sera plus pour les quadcore que les dual bien entendu ;)
 
Comment ça se passe au niveau des accès disque? Parce que si le décodage va plus lentement que la lecture sur le disque l'utilisation de la mémoire va monter en flèche car le pipe d'entrée va grossir :??:
 
Je me dis qu'il y a surement des optimisations à faire pour mettre en cache les données avant de les traiter, mais le plus dur c'est de synchroniser...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed