Я считаю, что ваша команда parallel
составлена неправильно. Вы можете запустить конвейер команд, как показано ниже:
parallel -j -2 "tar xf $tarball_name -O {} | grep -ac $pattern" :::: file_subset_in_tar.txt
Также обратите внимание, что обратные метки и использование cat
не нужны, параметры можно подавать в parallel
из файла с помощью ::::
.
Кажется, существует большое отсутствие документации / обсуждение для проектов невеб-приложения.
Это также было моим опытом. Однако модель, за которой Вы следуете, кажется корректной мне. Необходимо всегда открывать сессию, изменения фиксации, затем закрывать ее снова.
Я соглашаюсь, нет многих примеров для приложений с сохранением информации. Я думаю о выполнении следующего:
Как Вы у меня есть сервис окон, размещающий много сервисов WCF. Таким образом, сервисы WCF являются точками входа. В конечном счете все мои сервисы WCF наследовались AbstractService - который обрабатывает большой вход, и основной DB вставляет/обновляет.
В одном из лучших сообщений NHibernate я видел, HttpModule делает следующее: см. http://www.codeproject.com/KB/architecture/NHibernateBestPractices.aspx
private void BeginTransaction(object sender, EventArgs e) {
NHibernateSessionManager.Instance.BeginTransaction();
}
private void CommitAndCloseSession(object sender, EventArgs e) {
try {
NHibernateSessionManager.Instance.CommitTransaction();
}
finally {
NHibernateSessionManager.Instance.CloseSession();
}
}
Таким образом, возможно, я должен сделать что-то подобное в AbstractService. Так эффективно я закончу с сессией на сервисный вызов. При исследовании ссылки на статью лучших практик NHib выше Вы будете видеть, что NHibernateSessionManager должен иметь дело со всем остальным, пока я открываю и закрыл сеанс (конструктор AbstractService и деструктор).
Просто мысль. Но я сталкиваюсь с ошибками, потому что моя сессия, кажется, бродит вокруг слишком долго, и я получаю печально известную ошибку - NHibernate. AssertionFailure: пустой идентификатор в записи (не сбрасывают Сессию после исключения, происходит).
Вы также можете очистить сеанс, фактически не закрывая его, и это приведет к тому же результату. Я делаю.