|
|
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
schiYuRockпропущено... А разница есть. Если finally будет снаружи и в этом блоке произойдет исключение (что вполне вероятно), то оно окажется необработанным со всеми вытекающими. Что гораздо хуже хотя бы потому, что в лог оно не попадет. Видишь ли, в чем дело - при записи в лог с ненулевой вероятностью тоже может возникнуть исключение, остающееся необработанным с теми же вытекающими. Не в моем случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 11:45:48 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
schiВидишь ли, в чем дело - при записи в лог с ненулевой вероятностью тоже может возникнуть исключение, остающееся необработанным с теми же вытекающими. Это понятно. Но на что-то надо полагаться, что оно точно работает. Например, хотя бы на то, что винт не посыпался, что память не битая, что функция логирования не вызывает исключений. Это раз, а два - в этом случае упасть может только при записи в лог, а если наоборот - то и при записи в лог, и потом еще в finally. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 12:44:58 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanНе в моем случае. Думаю, в случае функции логирования допустима даже такая конструкция Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 12:48:55 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
YuRockwadmanНе в моем случае. Думаю, в случае функции логирования допустима даже такая конструкция Код: pascal 1. 2. 3. 4. 5. 6. Собственно так и делается: https://github.com/wadman/wthread/blob/master/wlog.pas ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 12:50:44 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanСобственно так и делается: https://github.com/wadman/wthread/blob/master/wlog.pas Оффтоп: 1. А чё ты не даёшь пустую строку в лог добавить? Имхо лишняя проверка. К тому же не запишется в лог, например, значение строковой переменной, если она пустая строка, это может быть важно. 2. Формат даты в логах я у себя уже много лет назад переделал с dd.mm.yyyy на yy.dd.mm - экономия 2 байтов в каждой строке это не мало, когда логи занимают десятки/сотни гигабайт, это ~5-10% от этого размера. 3. Использование системной очереди сообщений, как видно, используется. Я бы для такого свою очередь сделал. Но это дело вкуса. 4. Ну и самое страшное (так да немного не так) Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 13:08:46 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
YuRockс dd.mm.yyyy на yy.dd.mm на yy.mm.dd ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 13:09:45 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
YuRockЯ бы для такого свою очередь сделал. Включается автоматом на никсах, а в винде по условию компиляции (там inc есть). Остальное - мелочи. Особенно про пустую переменную - на кой она нужна, если её не идентифицировать названием? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 13:25:20 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanОстальное - мелочи. Ну как сказать. finally вместо except это описка, да, но отнюдь не мелочь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 13:36:12 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanна кой она нужна, если её не идентифицировать названием? Накой эту проверку делать? Если её идентифицировать названием - то эта проверка и так будет бесполезна - всегда будет True. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 13:38:37 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
YuRockwadmanОстальное - мелочи. Ну как сказать. finally вместо except это описка, да, но отнюдь не мелочь) В чем разница? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 14:14:41 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanВ чем разница? В чем разница между finally и except относительно wlog.pas? Файл может остаться висеть открытым вечно, например, в случае исключения при записи. Память не будет освобождаться, например, в TLogThread.WMLog при любом исключении. Да ну блин, ты что, травишь? Это логическая ошибка, подправь и закоммить, люди ж пытаются пользоваться вроде. Впрочем, дело твоё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 14:25:07 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
В чем разница между Код: pascal 1. 2. 3. 4. 5. 6. и Код: pascal 1. 2. 3. 4. 5. 6. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 14:27:47 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanВ чем разница между Код: pascal 1. 2. 3. 4. 5. 6. и Код: pascal 1. 2. 3. 4. 5. 6. ? Разница в том, что вторая конструкция не имеет смысла. Если при записи возникнет исключение, оно будет передано наверх, в отличие от первого случая, когда оно будет заглушено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 15:08:16 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadman Код: pascal 1. 2. 3. 4. 5. 6. это эквивалентно Код: pascal 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 15:12:33 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanСобственно так и делается: https://github.com/wadman/wthread/blob/master/wlog.pas Тоже оффтоп: Код: pascal 1. 2. 3. Ограниченным учёткам логов не нужно? :) IMHO на винде имеет смысл писать в %AppData%\%AppName%[\Logs]. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 16:32:17 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
И ещё: Код: pascal 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 16:38:49 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
alekcvpОграниченным учёткам логов не нужно? :) Разработчику это не нужно, т.к. проект запускается из папки, куда запись разрешена. Но если что, это переменная, заполняемая умолчательным значением и её можно менять. От флеша я по каким-то причинам отказался в свое время в результате экспериментов. schiЕсли при записи возникнет исключение, оно будет передано наверх, в отличие от первого случая, когда оно будет заглушено. Ок, понял. Меня именно такое поведение и устраивает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 16:48:40 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanМеня именно такое поведение и устраивает. Когда память не освобождается и/или файл открытый остается висеть? А так же прекращение работы потока логирования на первом же исключении при попытке записи (например, файл монопольно занят копированием)? Ну, ок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 17:18:13 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
Gallemar, Промолчу про качество кода... То, что соединение остаётся открытым - нормально. Более того, так задумано - это называется Connection Pooling. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2017, 14:19:11 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
Valery_BБолее того, так задумано - это называется Connection Pooling. кем задумано? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2017, 14:26:14 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2017, 16:38:45 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
Valery_B http://www.google.ru/search?ie=UTF-8&hl=ru&q=connection pooling Я знаю, что это такое. Откуда вообще взялась мысль, что ТС это задумывал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2017, 16:50:13 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanВ чем разница между Код: pascal 1. 2. 3. 4. 5. 6. и Код: pascal 1. 2. 3. 4. 5. 6. ?"Ну вы, блин, даете!!!" (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2017, 20:39:44 |
|
||
|
Не срабатывает отключение от базы пока не закрыта форма.
|
|||
|---|---|---|---|
|
#18+
wadmanЯ знаю, что это такое. Откуда вообще взялась мысль, что ТС это задумывал? не задумывал. Вообще код переписан,работает в продуктиве. Хочется кому-нибудь приватно показать, на предмет улучшений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2017, 03:49:33 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39499694&tid=2041964]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
445ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
85ms |
get tp. blocked users: |
2ms |
| others: | 204ms |
| total: | 784ms |

| 0 / 0 |
