Вы можете использовать цикл for
для итерации массива значений параметров и добавления их к выпадающему списку так:
//Example array of values for adding to drop down
const myArray = [ "Dog", "Cat", "Bird" ];
//Iterate your array of values
for(let x = 0; x < myArray.length; x++){
let z = document.createElement("option");
z.setAttribute("value", myArray[x]); //Add value of the current item from array
let t = document.createTextNode(myArray[x]); //Add text of the current item from array
z.appendChild(t);
document.getElementById("mySelect").appendChild(z);
}
Я помню, что я работал с передачей больших файлов, и я использовал режим buffered
для передачи, но это было не лучшее решение, потому что через некоторое время я получил какое-то исключение из-за утечки памяти или чего-то связанного с памятью, я изменил его на [ 111] и все работало нормально, в режиме buffered
это означает, что весь контент сообщения присутствует в памяти до его отправки или после его получения. Хотя это хорошая стратегия для большинства сценариев и необходима для таких функций обмена сообщениями, как цифровые подписи и надежная доставка, большие сообщения могут исчерпать ресурсы системы.
взгляните на здесь .
Чтобы не создавать новые буферы постоянно, WCF использует BufferManager для повторного использования буферов, вплоть до предела, указанного в maxBufferPoolSize
, buffers
, дорого создавать и уничтожать. Вы можете использовать класс BufferManager для управления буферным пулом.
Вы можете попробовать увеличить maxBufferPoolSize
, чтобы посмотреть, сможете ли вы уменьшить использование памяти. Я настоятельно рекомендую не увеличивать его до максимума, потому что я думаю, что буферы из пула никогда не освобождаются до тех пор, пока домен приложения не перезапустится. Период большого трафика может привести к тому, что будет использовано много памяти и она никогда не будет освобождена.
Поэтому я рекомендую использовать режим streamed
для передачи большого файла.
Чтобы разделить файлы и работать с большими потоками, вам могут помочь ссылки ниже:
Несколько файлов в одном потоке, пользовательский поток
Лучший способ возврата большой файл в виде разделенных zip-файлов, потокового или байтового массива WCF
это также может помочь вам
Несколько потоков в одном потоке не будут правильно переданы клиенту [ 1123]