Модераторы: Се ля ви

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> А можно без классов? 
:(
    Опции темы
kosmonaFFFt
Дата 30.11.2009, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



Насчет перескоков к функции - а не судьба пользоваться IDE, которые это умеют? Мну например, чтобы прыгнуть куда-то, надо просто нажать шифт и жмакнуть по функции мышом... Ну и к тому же если функция работает без ошибок, то зачем смотреть ее код, при каждом вызове? Достаточнотолько знать что она делает...


--------------------
user posted image
PM MAIL ICQ   Вверх
slavaentp
Дата 5.12.2009, 17:18 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 17.6.2008

Репутация: -1
Всего: -1



_______

Это сообщение отредактировал(а) slavaentp - 5.12.2009, 17:19
PM MAIL   Вверх
slavaentp
Дата 10.12.2009, 19:44 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 17.6.2008

Репутация: -1
Всего: -1



Приведу пример насчёт MSDN.

Вот мне нужно сделать очень простую вещь. Простейшую. На экране должна появиться цифра 1 и через секунду должна появиться цифра 2. Всё, больше ничего не надо.

Я не знаю как это делать. Но знаю, что в C# есть "Timer", вроде он за это отвечает. Открываю MSDN, набираю "Timer" в поисковом окне. Жму на вторую ссылку, мне там выдаёт:

Цитата

Предоставляет механизм для выполнения метода в заданные интервалы времени. Этот класс не может наследоваться.

Примененный к данному типу или члену атрибут HostProtectionAttribute имеет следующее значение свойства Resources: Synchronization | ExternalThreading. Атрибут HostProtectionAttribute не оказывает влияния на настольные приложения (обычно запускаемые двойным щелчком значка, вводом команды или вводом URL в обозревателе). Дополнительные сведения см. в описании класса HostProtectionAttribute или в разделе Программирование SQL Server и атрибуты защиты основного приложения.
saba8ksx.alert_note(ru-ru,VS.90).gifПримечание.

Примененный к этому классу атрибут HostProtectionAttribute имеет следующее значение свойствResources: Synchronization | ExternalThreading. Атрибут HostProtectionAttribute не оказывает влияния на приложения рабочего стола (обычно запускаемые двойным щелчком значка, вводом команды или вводом URL-адреса в веб-обозревателе). Дополнительные сведения см. в описании класса HostProtectionAttribute или разделе Программирование SQL Server и атрибуты защиты основного приложения.

Следует использовать делегат TimerCallback для задания метода, который надо выполнить объектом Timer. Делегат таймера задается при создании объекта таймера и не может изменяться. метод не выполняется в потоке, создавшем таймер; он выполняется в отдельном потоке ThreadPool, предоставляемом системой.

При создании таймера можно задать количество времени, в течение которого ожидать первого выполнения метода (ожидаемое время), и количество времени, в течение которых происходит ожидание между последовательными вызовами (период). Можно изменять эти значения, или отключить таймера используя метод Change.
saba8ksx.alert_note(ru-ru,VS.90).gifПримечание.

В течение всего использования объекта Timer, необходимо хранить на него ссылку. Что касается любого управляемого объекта, то объект Timer подлежит сборке мусора, когда на этот объект не существует ссылок. Тот факт, что Timer все еще активен, не предотвращает его от утилизации.

Когда в таймере больше нет необходимости, следует использовать метод Dispose для освобождения ресурсов, которые занимает таймер. Для получения сигнала после ликвидации таймера следует использовать перегрузку метода Dispose(WaitHandle), использующую WaitHandle. Объект WaitHandle получает сигнал при удалении таймера.

Метод обратного вызова, выполняемый таймером, должен быть реентерабельным, так как он вызывается потоками из ThreadPool. Обратный вызов может выполняться одновременно в двух пулах потоков, если интервал таймера меньше, чем время, нужное для выполнения обратного вызова, или если все пулы потоков уже используются, а обратный вызов запрошен несколько раз.
saba8ksx.alert_note(ru-ru,VS.90).gifПримечание.

Объект System.Threading..::.Timer — простой таймер, использующий методы ответного вызова, который обслуживается потоками пула. Не рекомендуется использовать с Windows Forms, поскольку обратные вызовы не происходят в потоках пользовательского интерфейса. System.Windows.Forms..::.Timer является более желательным вариантом для использования с Windows Forms. Для функций таймера, базирующихся на сервере, можно использовать System.Timers..::.Timer, который управляет событиями и обладает дополнительными функциями.
 Примеры

Вот как мне по ЭТОМУ понять, как мне мою простенькую задачу выполнить?

PM MAIL   Вверх
kosmonaFFFt
Дата 10.12.2009, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



0) написать метод, который вызывается по таймеру
1) создать таймер, передать ему делегат на метод
2) задать время срабатывания 1 с
3) задать однократное срабатывание
4) запустить таймер
smile Примерно так...
Я когда последний раз пользовался таймером на C#, вообще не читал ничего, а просто посмотрел какие методы у него есть,
и сделал то, что мне нужно...


--------------------
user posted image
PM MAIL ICQ   Вверх
Lazin
Дата 10.12.2009, 22:33 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 1
Всего: 154



Цитата(slavaentp @  10.12.2009,  19:44 Найти цитируемый пост)
Вот как мне по ЭТОМУ понять, как мне мою простенькую задачу выполнить?
блин, да проблема оказывается не в классах, может начать с чего нибудь попроще, ну там с helloworld-a например?
PM MAIL Skype GTalk   Вверх
source777
Дата 10.12.2009, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: нет
Всего: 56



Да закройте уже эту тему. А то скоро её будет пора в песочницу переносить...


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
GoldFinch
Дата 11.12.2009, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: нет
Всего: 26



Цитата(slavaentp @  10.12.2009,  19:44 Найти цитируемый пост)
Вот мне нужно сделать очень простую вещь. Простейшую. На экране должна появиться цифра 1 и через секунду должна появиться цифра 2.

в псевдокоде:
Код

print("1")
sleep(1000)
print("2")


Это сообщение отредактировал(а) GoldFinch - 11.12.2009, 10:58
PM MAIL ICQ   Вверх
list2006
Дата 29.9.2010, 17:11 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 30.12.2006

Репутация: нет
Всего: нет



Тебе мой друг подойдет Си (чистый, не С++)
хотя не кто не заставляет классы строить, он идеален как объект данных, в остальном это не панацея и пихать куда не надо не стоит.
PM MAIL   Вверх
RockClimber
Дата 30.11.2010, 08:54 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: нет
Всего: 15



Цитата(list2006 @  29.9.2010,  17:11 Найти цитируемый пост)
Тебе мой друг подойдет Си (чистый, не С++)

А паскаль не подойдет? Чорт, а я уже все написал...


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила раздела "Философия программирования":
Се ля ви

Форум "Философия программирования" предназначен для обсуждения вопросов, так или иначе связанных с философскими аспектами разработки ПО:

• вопросы перспективного развития методов написания ПО;

• изменяющиеся языки и методологии программирования;


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Се ля ви.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Философия программирования | Следующая тема »


 




[ Время генерации скрипта: 0.0876 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.