Я столкнулся с проблемой при создании приложения Blackberry, у меня есть до 7 threds вызовов, каждый из которых загружает аудио с сервера, и он отлично работает, но когда я запускаю свое приложение дважды, было исключено, что «СЛИШКОМ МНОГООБРАЗУЕТСЯ ОШИБКА ИСКЛЮЧЕНИЯ», Итак, дайте мне знать, как я могу решить эту проблему.TOO MANY THREADS ERROR EXCEPTION
ответ
Я думаю, вместо запуска 7 потоков использовать одну нить. 1. создать класс TaskWorker
public class TaskWorker implements Runnable {
private boolean quit = false;
private Vector queue = new Vector();
public TaskWorker() {
new Thread(this).start();
}
private Task getNext() {
Task task = null;
if (!queue.isEmpty()) {
task = (Task) queue.firstElement();
}
return task;
}
public void run() {
while (!quit) {
Task task = getNext();
if (task != null) {
task.doTask();
queue.removeElementAt(task);
} else {// task is null and only reason will be that vector has no more tasks
synchronized (queue) {
try {
queue.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
public void addTask(Task task) {
synchronized (queue) {
if (!quit) {
queue.addElement(task);
queue.notify();
}
}
}
public void quit() {
synchronized (queue) {
quit = true;
queue.notify();
}
}
}
2. создать абстрактный класс Task
public abstract class Task {
abstract void doTask();
}
3. Теперь создать задачу.
public class DownloadTask extends Task{
void doTask() {
//do something
}
}
4. и добавить эту задачу в taskworker нить
TaskWorker taskWorker = new TaskWorker();
taskWorker.addTask(new DownloadTask());
Спасибо, сэр, я попробую. – Farhan
Если это произойдет, когда вы переустановите приложение, это значит, что у вас должны быть некоторые зомби ... Вы уверены, что присоединились ко всем вашим темам?
Да, я вызываю семь потоков один за другим в Invokelater(). – Farhan
- 1. Ошибка: «Err Too Many Redirect» Prestashop 1.7
- 2. Nginx «ERR TOO MANY REDIRECTS» Index.php issue?
- 3. Too Many Write Ops
- 4. CUDA too many dlls
- 5. kivy too many indentation
- 6. Python getopt too many arguments
- 7. cassandra too many open files
- 8. Spring Boot Too Many Redirects
- 9. golang postgres too many connections error
- 10. mysql too many indexe keys
- 11. Scala foldLeft too many parameters
- 12. Ошибка «Too Many Fields Defined»
- 13. datetick too many output аргументы
- 14. sprintf too many/few decimals
- 15. Elasticsearch too many open files
- 16. interactivePopGestureRecognizer popping too many views
- 17. Hudson Too Many E-Mail
- 18. Elasticsearch query too many results
- 19. C# 'parsing ")" - Too Many)' s Issue
- 20. Mongo staled with too many insertions
- 21. zip list too many items to unpack
- 22. HikariCP too many Соединения с jooq
- 23. mysql join query take too many resources
- 24. jQuery autocomplete too many db requests
- 25. java autosys too many open files
- 26. npm -g "whatever" too many open files
- 27. paginating using .slice select too many items
- 28. scala case class too many fields
- 29. jasig cas too many redirects issue
- 30. Ошибка сценария оболочки: «[: too many arguments»
Обратите внимание, как никакие другие вопросы здесь имеют свое название все в шапках? Почему вы решили быть другим? – 2010-08-03 07:53:46
, имея меньше потоков? –