|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Ситуация такая - в foreach прогоняется по циклу элементы коллекции. У элементов этой коллекции есть свойства, содержащие координаты в виде x1, y1, x2, y2. Если я просматриваю в режиме дебаг значения этих полей - все отрабатывает как надо. Но если я просто запускаю или прогоняю дебагом без просмотра значений свойств в коллекции - идет изменение значений этих полей на какую-то фигню. В итоге элемент располагается не там и не такого размера. Самое интересное, что если я перед этим в том же foreach прогоняю эту коллекцию и пишу ее координаты в файл - все ок. Пользоваться lock пробовал - пытался запретить изменение значений полей внутри коллекции, но это не помогло. В чем может быть проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 14:27 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihelВ чем может быть проблема? Проблема в коде. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 14:32 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Спасибо, кэп. Только я использую общий проект, баг не мой, поэтому хотелось бы понять где могли наложить кучу, понять причину и, если возможно, обойти ее. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 14:44 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihelСпасибо, кэп. Только я использую общий проект, баг не мой, поэтому хотелось бы понять где могли наложить кучу, понять причину и, если возможно, обойти ее. 100% в коде. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 14:49 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihelСпасибо, кэп. Только я использую общий проект, баг не мой, поэтому хотелось бы понять где могли наложить кучу, понять причину и, если возможно, обойти ее. Ну тут великие телепаты и видят ошибку в коде, даже когда кода не видят. Это же так просто. Вариант с использованием телепатии у меня только один: если в дебаге все норм, в файл записывается хорошо, а компоненты раскладываются криво, то дело не коллекции координат. Может, у вас anchors или dock выставлены неверно. Есть какой-то фактор, влияющий на размещение компонент ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 14:49 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihelСпасибо, кэп И да, я майор (запаса) :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 14:49 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Вот здесь введение первого foreach почему-то решает проблему. Без него если в дебаге просмотеть значение любого элемента коллекции - тоже все ок. А если просто жать F5 - та же ошибка как и при запуске приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 15:04 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihel, посмотрите в реализацию свойств X1 и Y1. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 15:07 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihel Код: c# 1. 2. 3. 4. 5.
Этот абсолютно ненужный кусок кода в Release будет убран компилятором rihel Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Попробуйте так. Да, и как вы определили, что "не там и не того размера"? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 15:08 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Абсолютrihel, посмотрите в реализацию свойств X1 и Y1. Точно, еще код класса Element ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 15:09 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Вот этот код работает без неожиданностей Код: c# 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 16:25 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Вангану, что в другом потоке кто-то наводит порчу на коллекцию ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 17:25 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Как c lockoм пробовал? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2013, 17:36 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
Тема из жанра "А был ли мальчик?" ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 03:49 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihel, подкину одну мысль. вы работаете со struct. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 06:19 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
hVosttrihel, подкину одну мысль. вы работаете со struct. И в чем сама мысль? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 16:27 |
|
Изменение данных во время выполнения цикла foreach
|
|||
---|---|---|---|
#18+
rihelhVosttrihel, подкину одну мысль. вы работаете со struct. И в чем сама мысль? Я тоже сразу подумал о структурах. О вреде изменяемых значимых типов. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 17:51 |
|
|
start [/forum/moderation_log.php?user_name=theanton3399]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
447ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
others: | 477ms |
total: | 1059ms |
0 / 0 |