crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Iron Bug's Collection, коллекция кроссплатформенных кусочков кода на С++
Iron Bug
  опции профиля:
сообщение 5.11.2013, 1:15
Сообщение #1


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Вот, решила я всё-таки сделать приличное и публично доступное место для хранения своих полезных наработок:

Iron Bug's Collection
Возможно, полезны они будут не только мне, но и кому-то ещё.

Цели: кроссплатформа, С++, стандартные бибиотеки, либо с добавлением boost. Кусочки кода, которые можно использовать повторно. Сниппеты (snippets) - как их обозвать по-русски? :huh:

У меня за много лет накопилось немало кода. Я его сейчас привожу в порядок, в соответствии со стандартом С++11 и буду выкладывать полезные кусочки кода.

Сегодня выложила расширенный thread: ibc_threadex
Это доработка стандартного std::thread. К обычному потоку добавлен функционал boost::thread: возможность прерывания sleep'ов. Потом доделаю точки прерывания и прочее, чтобы было как в бусте. А то мне у стандартных потоков С++11 сильно не хватало interrupt'а.
Требует компилятора, совместимого с С++11 (в частности, variadic templates). Проверен под линюксом, с GCC 4.7 и GCC 4.8.2. Пока не тестировался под Windows (пока что некогда, венда у меня только на работе, а там времени мало), но под MSVS 2013 должен проканать без проблем, ибо написан на чистом С++, использует только стандартные библиотеки.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 5.11.2013, 14:08
Сообщение #2


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Собрала под вендой с MinGW-w64 - всё пучком. Проапдейтила конфиги у ibc_threadex.

А MSVS2013 Express у меня не поставилась :( Говорит, что у меня "венда устаревшая" (7-ка, 64 бит!). Теоретически должна ставиться, на сайте написано, что должна, без всяких дополнительных требований. А по факту - не ставится. Я ради неё даже все апдейты установила, полдня тут перезагружалась... а студия всё равно не ставится. И самое гадкое, что SDK тоже не ставится: говорит, что ему студия нужна :o: с каких пор для набора компилятора и линковщика стала нужна студия - мне непонятно. А ещё инсталлятор требует Explorer 10... в общем, впаривают юзерам всё подряд под соусом бесплатной студии :D Нет, это не монополия, это такой менеджмент: хочешь-не хочешь, а поставишь :)
Ну, ещё немного поковыряюсь, да и плюну, если надоест. MinGW уже больше фич поддерживает, чем MSVC.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 6.11.2013, 9:56
Сообщение #3


Мастер
******

Группа: Модератор
Сообщений: 3291
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Ты у нас еще на главной выложи в разделе исходники, лишняя ссылка на них не помешает, там же можно указать и ссылку на данное обсуждение! ;)

Да, мелкософт он такой, впихивает что только можно.

p.s. я про описание собранных тобой полезностей со ссылками на тебя, там на сурсфорж можно и другую главную страницу изобразить если что!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 6.11.2013, 17:47
Сообщение #4


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


я пока ещё мало полезностей выложила. полезностей много, но они не документированы. а недокументированный код подобен манускриптам Вавилона - нафиг никому не нужен :)
как будет поболее кода - я всё оформлю более серьёзно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 8.11.2013, 0:06
Сообщение #5


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Добавила код ibc_eventex.
Это попытка кроссплатформенной реализации event'ов, симулирующих поведение вендозных event'ов с WaitForSingleObject и WaitForMultipleObjects.
Использует только стандартные библиотеки С++11.
Пока в стадии проверки и без документации. Я перевожу всё на С++11 и нужно всё тщательно проверять.

Сообщение отредактировал Iron Bug - 8.11.2013, 0:06
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 6.6.2020, 0:11