Ну это вполне естественно - если браузер получил первым адрес, который не доступен (но браузер об этом не знает), то он все равно пытается подключиться по этому адресу и только когда получает отлуп по таймауту подключается по второму адресу.
Если канал не доступен продолжительное время и не известно когда заработает, то есть смысл отредактировать конфиг ДНСа и убрать на время не доступный адрес. Правда есть еще фактор ДНС кэша, который не сразу обновится. Но тут уж вы ничего сделать не можете (ну почти ничего).
Вообще есть смысл повесить некий скрипт, проверяющий доступность каналов и переключающий основной канал, который может менять конфиги ДНСа и перезагружать конфигурацию у ДНС демона.
nonameme: Вылетать мог из-за символов "!", они в некоторых случаях являются спец.символами. Но не в вашем случае. Избегайте в батниках использования спец.символов не по назначению.
А в вашем случае перед pause зачем-то закрывающая скобка, из-за этого и падало.
Скобки - то же спец.символ, особенно закрывающая :)
13 это размер "", т.е. смысл в том, чтобы получить текст внутри тега . Так что прибавить 13 вполне безопасно. Либо попадешь в начало текста, либо в конец, если тег пустой.
А в остальном про кодировки согласен.
Учитывая, что xml может быть в какой-угодно кодировке, логично было бы использовать xml парсер.
Быстрее чем сигвин - да. Но не фантан. Софт собранный с помощью msys/mingw работает раза в 2 медленнее, чем он же, собранный VS. Толи gcc плохо оптимизирует, то ли стандартная библиотека в mingw/gcc такая тормознутая.
Ну скриптом это называть "рука не поднимается".
А что бы вы хотели?
Чтоб программа прочитала ваши мысли и сделала вам хорошо? - пожалуй это из другой оперы.
В netsh есть команда dump - она выдает текущий конфигурационный скрипт. Настраиваете руками конфигурацию, затем выполняете netsh dump >config1.txt и т.д. для всех нужных конфигураций.
Когда нужно сменить конфигурацию выдаете:
netsh -f config1.txt
Доступ имеет не профиль, а пользователь, поэтому иметь будет. Пользователя вы ведь удалять не будете.
И не удаляйте, а переместите или переименуйте, чтобы иметь возможность скопировать информацию в новый профиль.
Не знаю как в доменной среде, а в локальных виндах для того что бы винда поняла что профиля нет нужно удалить раздел в реестре: HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\
описывающий расположение пользовательского профиля.
Евгений Самсонов: кстати, по поводу внедренной убунты: я че-то не разобрался как из нее попадать во внешний мир, например прочитать/записать файл, который будет виден в винде. Наверное плохо искал, но это из-за того, что уже давненько плотно сижу на msys и подобных заморочек там просто нет.
Святослав: дык ИДЕ упала - файл освободился, значит его можно удалить.
Если файл не освободился, значит процесс ИДЕ все еще висит в памяти и держит его, убейте процесс и удаляйте файл.
В вашей задаче нет более широкого смысла - каждый конкретный случай имеет свои собственные оптимизации, которые не подходят к другим вариантам.
Например про парсер ЯП, то числовые константы, обычно, восьмеричные начинаются на 0, шестнадцатиричные на 0x, остальные десятичные. Таким образом в простейшем случае достаточно проанализировать первые 2 цифры константы и т.д. И эта оптимизации для других примеров не подойдет.
Поэтому пока вы не дадите более полную вводную никто никаких оптимизаций вам не предложит.
Как минимум, потому что это разные сущности и для операций с каждой из них серверу нужно выделить какое-то количество памяти.
Подобное выделение имеет смысл, если количество операций с двумя базами одновременно не большое.
Вообще, в корпоративных базах данных несколько сотен (а то и тысяч) таблиц это нормальное явление.
Если нужно увеличить производительность, то для этого есть другие способы:
1. стандартные: индексация таблиц, дефрагментация индексов, обновление статистики.
2.если не хватает стандартных способов: отделение физического расположения журнального файла от файла базы данных, перемещение наиболее часто используемых таблиц в отдельную storage group и помещение этой группы на более быстрые диски (SSD).
На самом деле, выделение таблиц в отдельную базу данных вам вряд ли даст вообще какое-то ощутимое изменение в быстродействии сервера БД. Поскольку накладные расходы на работу с двумя базами, конечно больше, но не настолько критично, чтоб это сказывалось на производительности.
Да, иногда для разблокировки занятого неизвестно чем файла нужно и ОСь перезагружать, но это редко.
Многие IDE позволяют удалять файлы прямо из собственного интерфейса, в других можно удалить файл из проекта не удаляя его из файловой системы, а потом руками удалить файл из ФС.
Если ваша ИДЕ не умеет ни того ни другого, то не нужный файл после закрытия его в ИДЕ и удаления из проекта можно перенести в другой каталог и потом, когда сама ИДЕ будет закрыта, удалить файл. Так же можно поставить скрипт в шедулер или в автозагрузку, удаляющий все файлы из заданного каталога, тогда после переноса можно не заботится об удалении файла - сам со временем удалится.
Кстати, чем-то подобным страдает Adobe Reader - пока не закроешь сам ридер нельзя удалить ранее открытый и закрытый файл.
Так же можно вычислять размер достаточного буфера, вызвав sprintf с первым параметром NULL, тогда она не будет никаких действий производить, но вернет вычисленный размер буфера. Потом выделяете этот объем памяти и заполняете его как обычно.
Но в целом, проще так как показал Mercury13
Не знаю что такое r01, но если вопрос критичен, то есть смысл перевести ДНС на свою площадку.