Size: a a a

2021 January 24

МС

Михаил Серебренников... in Qt
Omurgaziev Nursultan
Переслано от Omurgaziev Nursultan
всем здраствуйте  у меня есть один main.qml файл и он очень большой как мне разбить код по Qml файлам?
https://stackoverflow.com/questions/35118900/how-do-i-split-my-qml-code-into-multiple-files пробывал так но не один метод не помог
пробывал напрямую Myfile{} не получилось и через property Component testname: testname{} Qt creator выдает ошибку всегда и еще пытался пересобирать не помогло
заранее спасибо
Было так:
Item.qml
Item {
   Repeater {
       delegate: Rectangle {
             Text {
                  text: "debug"
             }
       }
   }
}
Стало так:
Item.qml
Item {
     Repeater {
              delegate: Delegate { }
     }
}

Delegate.qml
Rectangle {
    Text {
          text: "debug"
    }
}
источник

A

Artem in Qt
Кто шарит в многопоточности, подскажите, пожалуйста, возможно ли это средствами qt:
Есть данные, которые из файла загружаются например в QStringList, и нужно в несколько потоков, допустим 5, обрабатывать эти данные, то есть берётся первый элемент, поток выполняет определённые действия и затем берет следующие данные, и так пока данные не кончатся, потоки синхронизируются и выполняют действия. Спасибо.
UPD: при этом данные из всех потоков (результаты парсера) должны записываться в единое хранилище
источник

AN

Alexander N in Qt
Artem
Кто шарит в многопоточности, подскажите, пожалуйста, возможно ли это средствами qt:
Есть данные, которые из файла загружаются например в QStringList, и нужно в несколько потоков, допустим 5, обрабатывать эти данные, то есть берётся первый элемент, поток выполняет определённые действия и затем берет следующие данные, и так пока данные не кончатся, потоки синхронизируются и выполняют действия. Спасибо.
UPD: при этом данные из всех потоков (результаты парсера) должны записываться в единое хранилище
это по описанию parallel_for, только есть ли такое в Qt
источник

A

Artem in Qt
Alexander N
это по описанию parallel_for, только есть ли такое в Qt
Мне кажется тут как то через мьютекс надо
источник

A

Amir in Qt
Artem
Кто шарит в многопоточности, подскажите, пожалуйста, возможно ли это средствами qt:
Есть данные, которые из файла загружаются например в QStringList, и нужно в несколько потоков, допустим 5, обрабатывать эти данные, то есть берётся первый элемент, поток выполняет определённые действия и затем берет следующие данные, и так пока данные не кончатся, потоки синхронизируются и выполняют действия. Спасибо.
UPD: при этом данные из всех потоков (результаты парсера) должны записываться в единое хранилище
Что если использовать тредпул? Задаешь нужное количество тредов, создаёшь класс наследник от куранабл в нем пишешь обработку и добавляешь адрес мьютекса для записи в хранилище. Можно ещё добавить атрибут индекс, если надо последовательно записывать куда-то. Задача сомнительная, конечно
источник

МС

Михаил Серебренников... in Qt
Artem
Кто шарит в многопоточности, подскажите, пожалуйста, возможно ли это средствами qt:
Есть данные, которые из файла загружаются например в QStringList, и нужно в несколько потоков, допустим 5, обрабатывать эти данные, то есть берётся первый элемент, поток выполняет определённые действия и затем берет следующие данные, и так пока данные не кончатся, потоки синхронизируются и выполняют действия. Спасибо.
UPD: при этом данные из всех потоков (результаты парсера) должны записываться в единое хранилище
источник

МС

Михаил Серебренников... in Qt
Эта задача называется Map-Reduce.
источник

A

Artem in Qt
Amir
Что если использовать тредпул? Задаешь нужное количество тредов, создаёшь класс наследник от куранабл в нем пишешь обработку и добавляешь адрес мьютекса для записи в хранилище. Можно ещё добавить атрибут индекс, если надо последовательно записывать куда-то. Задача сомнительная, конечно
А в чем сомнительность? Обычный многопоточный парсер
источник

A

Amir in Qt
Artem
А в чем сомнительность? Обычный многопоточный парсер
Я думаю если надо записывать куда-то последовательно потом, то под сомнение ставится производительность. Например первый элемент может быть 1млн символов, а все остальные 1 символ, тогда остальные потоки будут ждать пока первый не закончит
источник

A

Artem in Qt
Amir
Я думаю если надо записывать куда-то последовательно потом, то под сомнение ставится производительность. Например первый элемент может быть 1млн символов, а все остальные 1 символ, тогда остальные потоки будут ждать пока первый не закончит
Последовательно записывать не нужно
источник

A

Amir in Qt
Михаил Серебренников
Эта задача называется Map-Reduce.
Спасибо, будем гуглить
источник

A

Amir in Qt
Artem
Последовательно записывать не нужно
Понятно
источник

МС

Михаил Серебренников... in Qt
Amir
Спасибо, будем гуглить
А зачем гуглить, если я тебе выше прямую ссылку на документацию скинул?
источник

A

Amir in Qt
Михаил Серебренников
А зачем гуглить, если я тебе выше прямую ссылку на документацию скинул?
Ну ладно, не спасибо
источник

SE

Suigintou45 E14 in Qt
Amir
Спасибо, будем гуглить
ещё std::for_each и прочее из algorithms с execution::par
источник

A

Amir in Qt
Suigintou45 E14
ещё std::for_each и прочее из algorithms с execution::par
А можно управлять числом потоков в for_each?
источник

LA

Liber Azerate in Qt
Amir
А можно управлять числом потоков в for_each?
Нет, и не надо. Алгоритм сам проанализирует количество доступных потоков и всё такое
источник

A

Amir in Qt
Liber Azerate
Нет, и не надо. Алгоритм сам проанализирует количество доступных потоков и всё такое
Вот именно. Тогда топик стартера не нужно вводить в заблуждение, я считаю.
источник

A

Amir in Qt
Suigintou45 E14
ещё std::for_each и прочее из algorithms с execution::par
К чему это?
источник

SE

Suigintou45 E14 in Qt
Artem
Кто шарит в многопоточности, подскажите, пожалуйста, возможно ли это средствами qt:
Есть данные, которые из файла загружаются например в QStringList, и нужно в несколько потоков, допустим 5, обрабатывать эти данные, то есть берётся первый элемент, поток выполняет определённые действия и затем берет следующие данные, и так пока данные не кончатся, потоки синхронизируются и выполняют действия. Спасибо.
UPD: при этом данные из всех потоков (результаты парсера) должны записываться в единое хранилище
👆к этому. промахнулся постом)
источник