Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 18.03.2017
Сообщений: 5
1

Awesomium (v1.7.5.1) CLR has been unable to transition from COM context

18.03.2017, 22:56. Показов 777. Ответов 0

Author24 — интернет-сервис помощи студентам
Здравствуйте.

WinForms, Awesomium v1.7.5.1 делаю парсер, для этого беру из базы большой список ссылок и открываю их в цикле путем передачи в метод описанный ниже, но через минуту компилятор сообщает, что происходят какие-то проблемы с памятью при выполнении длинной операции, подскажите, в какую сторону копать. Ошибку которую выдает компилятор в самом низу.

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
 public Content GetContentByURL(string URL, Link item) {
            try
            {
 
                    using (WebView view = WebCore.CreateWebView(120, 60,  WebViewType.Offscreen))
                    {
                        bool finishedLoading = false;
 
                        view.Source = new Uri(URL);
 
                        view.LoadingFrameComplete += (s, e) =>
                        {
                            if (e.IsMainFrame)
                                finishedLoading = true;
                        };
 
                        while (!finishedLoading)
                        {
                            Thread.Sleep(100);
                            WebCore.Update();
                        }
 
                        //Создаю обьект в который при помощу яваскрипта передам информацию с загруженной веб страницы страницы и затем верну этот обьект для сохранения в другой метод
                        
                        var contentObj = new Content()
                        {
                        
                            Price = view.ExecuteJavascriptWithResult($"document.querySelector('{item.Site.PricePathCSS}').innerHTML;").ToString(),                           
 
                        };
 
                        return contentObj;                   
                }
 
            }
            catch (Exception r)
            {
               
                System.Windows.Forms.MessageBox.Show(r.Message);
                return null;
            }
        }


Managed Debugging Assistant 'ContextSwitchDeadlock' occurred
HResult=0x00000000
Message=**Managed Debugging Assistant 'ContextSwitchDeadlock' :** 'The CLR has been unable to transition from COM context 0x11edbe8 to COM context 0x11edb30 for 60 seconds. The thread that owns the destination context/apartment is most likely either doing a non pumping wait or processing a very long running operation without pumping Windows messages. This situation generally has a negative performance impact and may even lead to the application becoming non responsive or memory usage accumulating continually over time. To avoid this problem, all single threaded apartment (STA) threads should use pumping wait primitives (such as CoWaitForMultipleHandles) and routinely pump messages during long running operations.'
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2017, 22:56
Ответы с готовыми решениями:

Ошибка Unable to unload within this context
Есть массив элементов, с именем xxx и всего их 5 (с 0 до 4) Пытаюсь выгрузить 4 из них: for i=1...

Что такое -webkit-transition, -moz-transition, -o-transition?
Изучаю анимацию в css с помощью transition. В каждом примере вижу похожую запись. ...

Unable to create debug bridge unable to start adb server
Хочу отлаживать с телефона, не получается подцепиться к телефону. Телефон HTC. HTC Sync...

Помогите поднять клиента: Unable to connect to database server: unable to start database engine
Есть сервре Sybase SQL Anywhere 5.0 к нему настроен драйвер ODBC с помощью которого поднимается db...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
0
18.03.2017, 22:56
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru