Как сделать автозаполнение в поиске десктопной программы - PullRequest
1 голос
/ 07 декабря 2009

Я программирую поисковую программу для поиска слов и предложений в базе данных SqlServer 2008.

Я хочу сделать это как Вавилон:

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

Я написал алгоритм для поисковой системы, но использовал потоки, чтобы начать предыдущие шаги, поэтому я создаю новый поток для каждого события KeyPress. Я заметил медлительность в этом подходе. Кто-нибудь может предложить новый?

Моя цель - сделать его похожим на Вавилон. Это быстро в автозаполнении.

1 Ответ

1 голос
/ 07 декабря 2009

Почему бы не запустить свой алгоритм в одном потоке для одной и той же базы данных. Сдается мне, что поток за нажатие клавиши является излишним.

То, что вы также можете сделать, это получить строки из таблицы X, а затем запустить алгоритм против них, вместо того чтобы возвращаться в базу данных (не уверен, что вы уже это делаете).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...