/**
* Copyright (C) 2014-2020 ServMask Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see Сообщение Aorus RGB AIC 512GB 3D появились сначала на PC Market. Сообщение SSD M2 Gigabyte 512GB NVMe появились сначала на PC Market. Сообщение SSD BIOSTAR M700-512GB NVME появились сначала на PC Market. Сообщение M.2 HIKVISION 512GB появились сначала на PC Market. Сообщение LEXAR NS100 512GB появились сначала на PC Market. Сообщение SSD Gigabyte 512GB GP-GSM2NE8512GND NVMe M.2. появились сначала на PC Market. Сообщение SSD Samsung 512GB 970 EVO PRO M2 NVME (MZ-V7P512W) появились сначала на PC Market.
%d%% complete', AI1WM_PLUGIN_NAME ), $total_themes_files_count, $progress ) );
// Flag to hold if file data has been processed
$completed = true;
// Start time
$start = microtime( true );
// Get themes list file
$themes_list = ai1wm_open( ai1wm_themes_list_path( $params ), 'r' );
// Set the file pointer at the current index
if ( fseek( $themes_list, $themes_bytes_offset ) !== -1 ) {
// Open the archive file for writing
$archive = new Ai1wm_Compressor( ai1wm_archive_path( $params ) );
// Set the file pointer to the one that we have saved
$archive->set_file_pointer( $archive_bytes_offset );
// Loop over files
while ( list( $file_abspath, $file_relpath, $file_size, $file_mtime ) = fgetcsv( $themes_list ) ) {
$file_bytes_written = 0;
// Add file to archive
if ( ( $completed = $archive->add_file( $file_abspath, 'themes' . DIRECTORY_SEPARATOR . $file_relpath, $file_bytes_written, $file_bytes_offset ) ) ) {
$file_bytes_offset = 0;
// Get themes bytes offset
$themes_bytes_offset = ftell( $themes_list );
}
// Increment processed files size
$processed_files_size += $file_bytes_written;
// What percent of files have we processed?
$progress = (int) min( ( $processed_files_size / $total_themes_files_size ) * 100, 100 );
// Set progress
Ai1wm_Status::info( sprintf( __( 'Archiving %d theme files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_themes_files_count, $progress ) );
// More than 10 seconds have passed, break and do another request
if ( ( $timeout = apply_filters( 'ai1wm_completed_timeout', 10 ) ) ) {
if ( ( microtime( true ) - $start ) > $timeout ) {
$completed = false;
break;
}
}
}
// Get archive bytes offset
$archive_bytes_offset = $archive->get_file_pointer();
// Truncate the archive file
$archive->truncate();
// Close the archive file
$archive->close();
}
// End of the themes list?
if ( feof( $themes_list ) ) {
// Unset archive bytes offset
unset( $params['archive_bytes_offset'] );
// Unset file bytes offset
unset( $params['file_bytes_offset'] );
// Unset themes bytes offset
unset( $params['themes_bytes_offset'] );
// Unset processed files size
unset( $params['processed_files_size'] );
// Unset total themes files size
unset( $params['total_themes_files_size'] );
// Unset total themes files count
unset( $params['total_themes_files_count'] );
// Unset completed flag
unset( $params['completed'] );
} else {
// Set archive bytes offset
$params['archive_bytes_offset'] = $archive_bytes_offset;
// Set file bytes offset
$params['file_bytes_offset'] = $file_bytes_offset;
// Set themes bytes offset
$params['themes_bytes_offset'] = $themes_bytes_offset;
// Set processed files size
$params['processed_files_size'] = $processed_files_size;
// Set total themes files size
$params['total_themes_files_size'] = $total_themes_files_size;
// Set total themes files count
$params['total_themes_files_count'] = $total_themes_files_count;
// Set completed flag
$params['completed'] = $completed;
}
// Close the themes list file
ai1wm_close( $themes_list );
return $params;
}
}
Тип накопителя - SSD
Объем накопителя - 512 ГБ
Форм-фактор - M.2 2280
Физический интерфейс - PCI-E
Цена 3 200 000
Тип накопителя - SSD
Объем накопителя - 512 ГБ
Форм-фактор - M.2 2280
Физический интерфейс - PCI-Express 3.0 x4
Цена 970 000
Тип накопителя - SSD
Объем накопителя - 512 ГБ
Форм-фактор - M.2 2280
Физический интерфейс - PCI-E 3.0 x4
Цена 780 000
Тип накопителя - SSD
Объем накопителя - 512GB
Форм-фактор - М.2
Физический интерфейс - PCI-E 3.0 x4
Тип накопителя - SSD
Объем накопителя - 512GB
Форм-фактор - 2,5"
Физический интерфейс - SATA III
Исполнение - внутренний
Тип накопителя - SSD
Объем накопителя - 512GB
Форм-фактор - М.2
Физический интерфейс - PCI-E 3.0 x4
Исполнение - внутренний
Тип накопителя - SSD
Объем накопителя - 512GB
Форм-фактор -M. 2
Физический интерфейс - PCI-E 3.0 4x