Вверх ↑
Ответов: 655
Рейтинг: 18
#1: 2015-03-08 02:28:29 ЛС | профиль | цитата
Tad, ни чего не возвращает, этой функции кажись нет в sqlite3.api))
------------ Дoбавленo в 00.27:
Gunnman писал(а):
Gunnman писал(а)
проверял через скриптовый язык FBSL:

Результат ?
"Library is threadsafe"

Сейчас выложу схемы для теста
------------ Дoбавленo в 01.46:
Вот Архив http://forum.hiasm.com/forum_serv.php?q=56&id=3916

В Архиве Pas исходники компонентов редактированные мной.

При FULLMUTEX БД открыта в 1 потоке, 5 других потоков пишут в нее (1 соединение с БД)

При NOMUTEX БД открыта в 1 потоке, 5 других потоков пишут в нее (1 соединение с БД) - ошибка приложение крашится.

http://www.sqlite.org/threadsafe.html

Serialized. In serialized mode, SQLite can be safely used by multiple threads with no restriction.

Multi-thread. In this mode, SQLite can be safely used by multiple threads provided that no single database connection is used simultaneously in two or more threads.

------------ Дoбавленo в 02.21:
Make(delphi)
ver(4.04 build 185)
Add(MainForm,2953706,21,105)
{
Width=348
Height=237
}
Add(Label,288061,336,175)
{
Left=17
Top=81
Width=122
Caption="NO ERRORS"
}
Add(Button,2458128,119,175)
{
Left=10
Top=47
Width=117
Caption="NOMUTEX"
link(onClick,11982242:doFor,[])
}
Add(For,11982242,217,175)
{
End=4
link(onEvent,8781949:##add,[])
}
Add(MultiElementEx,8781949,273,175)
{
Mode=1
link(onError,288061:doText,[])
}
BEGIN_SDK
Add(EditMultiEx,15934334,21,21)
{
WorkCount=#5:##add|
EventCount=#7:onError|
VarCount=#8:dbHandle|
Width=552
Height=410
Point(##add)
link(##add,14531830:doStart,[(73,27)(73,125)])
}
Add(SQLite_DB,16053219,266,112)
{
FileName="test.db"
}
Add(Thread,14531830,126,119)
{
link(onExec,16053219:doOpenN,[])
link(onSyncExec,8688802:doQuery,[(212,132)(212,167)])
}
Add(SQLite_Query,8688802,266,161)
{
SQL="insert into test values (1,'1');\r\ninsert into test values (2,'2');"
link(onError,15934334:onError,[(436,181)(436,27)])
link(dbHandle,16053219:dbHandle,[])
}
END_SDK
Add(Button,14780588,140,231)
{
Left=14
Top=118
}


А вот пример работы с MultiThread (NOMUTEX)
------------ Дoбавленo в 02.28:
Насчет примера MultiThread (NOMUTEX) немного сомневаюсь, но по моему я его верно отобразил
карма: 0

0