|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
01.07.2009, 09:07 | #21 |
Пользователь
Регистрация: 30.06.2009
Сообщений: 39
|
Спасибо большое. Воспроизведу этот код у себя и разберусь. Если что буду спрашивать.
Кстати, что значит не синхронизирован, не соблюдает условия безопасности? И я вот почитал приведенный код. И так понял что 2 функции, в каждой часть задачи обрабатывается, и каждая функция на своем ядре работает. И еще если можно, распишите значение цифр и команд которые находятся th:=CreateThread(вот тут) Последний раз редактировалось MaTBeu; 01.07.2009 в 11:59. |
01.07.2009, 10:20 | #22 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
th2:=CreateThread(
Указатель на структуру безопасности, если 0 то по умолчанке, Размер стека 0 - по родительскому процессу, @tf2 - указатель на функцию потока, 0 - какой нить параметр, CREATE_NEW - флаг создания, tid - переменка куда запишется идентификатор потока); Хелп еще не отменили, подробности в WIN32SDK.HLP Цитата:
I'm learning to live...
|
|
01.07.2009, 12:01 | #23 |
Eclipse Foundation
Старожил
Регистрация: 19.09.2007
Сообщений: 2,604
|
В данном случае вам нужно либо использовать Interlocked функции, либо сделать схему синхронизации для взаимоисключающего доступа. Или сделать каждому потоку свою переменную, в которой будет результат вычисления, а потом просто сложить и все.
|
01.07.2009, 13:10 | #24 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
вообще, чувствуется, что где-то подвох..
если два потока будут считать одно и тоже, то и результат вычислений в каждом из потоков будет ОДИН И ТОТ ЖЕ! И это будет явно не быстрее, чем подсчитать это значение в ОДНОМ потоке и результат умножить на 2.... я прав?... |
01.07.2009, 13:14 | #25 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
01.07.2009, 18:24 | #26 |
Пользователь
Регистрация: 30.06.2009
Сообщений: 39
|
Привожу код своей программы, чтобы не возникало ни каких неточностей и предположений:
Код:
Последний раз редактировалось Stilet; 02.07.2009 в 09:13. |
02.07.2009, 09:20 | #27 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Что делает этот код и зачем им нужно весь процессор загружать?
I'm learning to live...
|
02.07.2009, 10:31 | #28 |
Пользователь
Регистрация: 30.06.2009
Сообщений: 39
|
Этот код возводит число 2 в 30999989 степень. а на вопрос зачем загружать процессор полностью для того что бы он не работал в пустую, всё таки время на обработку этой операции меньше будет. А то тут несколько месяцев надо.
Последний раз редактировалось Iong; 03.07.2009 в 06:13. |
02.07.2009, 10:56 | #29 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
это линейная операция...мне не кажется что её можно разбить
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
02.07.2009, 21:58 | #30 |
Пользователь
Регистрация: 30.06.2009
Сообщений: 39
|
Ну что, уважаемые программисты, ни у кого нет идей?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? | Mclaren | Помощь студентам | 2 | 27.04.2009 22:37 |
готовое приложение | ComeToDaddy | Помощь студентам | 17 | 03.04.2009 18:25 |
консольное приложение | user_jasser | Общие вопросы Delphi | 3 | 17.10.2008 12:17 |
Консольное приложение | a_priori | Общие вопросы Delphi | 6 | 12.03.2008 08:33 |
Пароль на приложение | Chals | Общие вопросы Delphi | 6 | 24.11.2007 21:32 |