TWebbrowser очень медленно загружать маркеры реального времени с локальной карты Google HTML

Я отображаю каждые 2 секунд множество точек GPS в реальном времени (20) показывая его из файла index.html (используя карты Google для отображения и обработки точек) в моем TWebBrowser, и это сильно замедляет работу моего приложения.

И так как я получил другой модуль под тем же приложением, позволяющий мне вводить данные в мою базу данных, он замораживает обычно мое приложение.

Я знаю, что потоки сделаны для этого, но я не уверен, что это решит мою проблему. Любые идеи???

Спасибо Gwenael

PS: может ли тот факт, что я загружаю код javascript из внешнего файла (а не исходный код загрузки в приложении delphi), замедлить приложение?

-121--1920693- Как использовать varargs в сочетании с указателями функций в C на Win64? Рассмотрим следующую программу C: # include < stdarg.h > typedef void (callptr) (); статическая пустота зафиксирована (пустота * что-то, двойной вал) {printf («% f\n», val); } статический...

Рассмотрим следующую программу C:

#include <stdio.h>
#include <stdarg.h>

typedef void (callptr)();

static void fixed(void *something, double val)
{
    printf("%f\n", val);
}

static void dynamic(void *something, ...)
{
    va_list args;
    va_start(args, something);
    double arg = va_arg(args, double);
    printf("%f\n", arg);
}

int main()
{
    double x = 1337.1337;
    callptr *dynamic_func = (callptr *) &dynamic;
    dynamic_func(NULL, x);
    callptr *fixed_func = (callptr *) &fixed;
    fixed_func(NULL, x);

    printf("%f\n", x);
}

В основном, идея состоит в том, чтобы сохранить функцию с переменными аргументами в указателе «generic» функции. В качестве сравнения я также включил другую функцию с фиксированным списком аргументов. Теперь посмотрите, что происходит при запуске в x86 Linux, amd64 Linux, Win32 и Win64:

$ gcc -m32 -o test test.c
$ file test
test: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
$ ./test
1337.133700
1337.133700
1337.133700

$ gcc -o test test.c
$ file test
test: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
$ ./test
1337.133700
1337.133700
1337.133700

C:\>gcc -o test.exe test.c
C:\>file test.exe
test.exe: PE32 executable for MS Windows (console) Intel 80386 32-bit
C:\>test.exe
1337.133700
1337.133700
1337.133700

C:\>x86_64-w64-mingw32-gcc -o test.exe test.c
C:\>file test.exe
test.exe: PE32+ executable for MS Windows (console) Mono/.Net assembly
C:\>test.exe
0.000000
1337.133700
1337.133700

Почему динамическая функция получает нулевое значение из аргумента переменной, перечислять на Win64, но не в других конфигурациях? Что-то вроде этого вообще законно? Я предполагал, что это потому, что компилятор не жаловался.

6
задан smf68 5 September 2011 в 12:57
поделиться