en Java, j'ai un large éventail de chaînes.mises à jour simultanées sur un tableau en Java
J'ai un fil faire quelque chose comme ceci:
for (int i=0;i<10000;i++) array[i] = getSomeValue();
J'ai un autre thread faire quelque chose comme ceci:
for (int i=10000;i<20000;i++) array[i] = getSomeValue();
et un autre thread faire:
for (int i=20000;i<30000;i++) array[i] = getSomeValue();
et ainsi sur.
dois-je faire quelque chose de spécial pour faire cette opération?
cela fonctionnera-t-il?
Je tente de remplir ce grand tableau plus rapidement en divisant la tâche en plusieurs threads, mais je me demande si c'est la bonne chose à faire.
Je travaille avec une machine 64 bits 16 cpus et toutes les choses de fantaisie.
Si vous avez de la malchance, vous pouvez rencontrer un problème de simultanéité si chaque thread essaye de redimensionner le tableau en même temps. Si vous connaissez déjà le nombre total d'éléments à ajouter, vous devez créer votre tableau de cette taille. – Parvez