Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# - физический размер указателя на Object. / 15 сообщений из 15, страница 1 из 1
26.01.2017, 23:46
    #39392582
YUBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Какой в C# физический размер указателя на Object. Если возможно, дайте ссылку.

"Есть многое на свете, друг Горацио, что и не сразу в голову придет."
М. Твен "Приключения Геккельбери Финна"
...
Рейтинг: 0 / 0
26.01.2017, 23:47
    #39392584
Т-Миронов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
YUBAКакой в C# физический размер указателя на Object. Если возможно, дайте ссылку.

"Есть многое на свете, друг Горацио, что и не сразу в голову придет."
М. Твен "Приключения Геккельбери Финна"

Код: c#
1.
sizeof(IntPtr)
...
Рейтинг: 0 / 0
26.01.2017, 23:56
    #39392588
YUBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Т-Миронов, Спасибо.
...
Рейтинг: 0 / 0
27.01.2017, 00:11
    #39392595
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Т-МироновYUBAКакой в C# физический размер указателя на Object. Если возможно, дайте ссылку.

"Есть многое на свете, друг Горацио, что и не сразу в голову придет."
М. Твен "Приключения Геккельбери Финна"

Код: c#
1.
sizeof(IntPtr)


как нехорошо -
Error CS0233 'IntPtr' does not have a predefined size, therefore sizeof can only be used in an unsafe context (consider using System.Runtime.InteropServices.Marshal.SizeOf)
Код: c#
1.
Marshal.SizeOf<IntPtr>()
...
Рейтинг: 0 / 0
27.01.2017, 00:46
    #39392599
YUBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Изопропилкак нехорошо -
Error CS0233 'IntPtr' does not have a predefined size, therefore sizeof can only be used in an unsafe context (consider using System.Runtime.InteropServices.Marshal.SizeOf)
Код: c#
1.
Marshal.SizeOf<IntPtr>()

Я так понял, что сохранить его в переменной другого типа не получится.
...
Рейтинг: 0 / 0
27.01.2017, 02:13
    #39392618
Т-Миронов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
YUBAИзопропилкак нехорошо -
Error CS0233 'IntPtr' does not have a predefined size, therefore sizeof can only be used in an unsafe context (consider using System.Runtime.InteropServices.Marshal.SizeOf)
Код: c#
1.
Marshal.SizeOf<IntPtr>()

Я так понял, что сохранить его в переменной другого типа не получится.

Нет. Это просто девушка со мной заигрывает. Размер указателя можно сохранить в любой переменной численого типа.
...
Рейтинг: 0 / 0
27.01.2017, 02:34
    #39392619
YUBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Т-МироновРазмер указателя можно сохранить в любой переменной численого типа.Сейчас смотрю.
IntPtr.ToInt32, IntPtr.ToInt64. А обратно видимо
Код: c#
1.
2.
3.
int a; .......  IntPtr A=a.ToPointer();
//или
IntPtr A=IntPtr(a);

Или как?
...
Рейтинг: 0 / 0
27.01.2017, 08:30
    #39392657
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
YUBAЯ так понял, что сохранить его в переменной другого типа не получится.
значение будет 4 или 8

Я правильно понял, что значение указателя сохранить в целой переменной хочется?
UInt64 будет достаточно.
Не очень ясно зачем это нужно - но это другой вопрос.
...
Рейтинг: 0 / 0
27.01.2017, 08:46
    #39392665
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
YUBAТ-МироновРазмер указателя можно сохранить в любой переменной численого типа.Сейчас смотрю.
IntPtr.ToInt32, IntPtr.ToInt64. А обратно видимо
Код: c#
1.
2.
3.
int a; .......  IntPtr A=a.ToPointer();
//или
IntPtr A=IntPtr(a);


Или как?
Код: c#
1.
IntPtr A=(IntPtr)a; 



размер IntPtr определить - IntPtr.Size, но проще всегда 64 бит целое использовать

ЗЫ а зачем это всё?
...
Рейтинг: 0 / 0
27.01.2017, 08:53
    #39392668
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
От платформы зависит
РазмерПлатформа4x868x64

Проверял так
Код: c#
1.
2.
			var arr = new Object[1000000];
			Console.WriteLine((Double)GC.GetTotalMemory(false) / 1000000);
...
Рейтинг: 0 / 0
27.01.2017, 09:03
    #39392672
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Dima TОт платформы зависит
РазмерПлатформа4x868x64

Проверял так
Код: c#
1.
2.
			var arr = new Object[1000000];
			Console.WriteLine((Double)GC.GetTotalMemory(false) / 1000000);



ужас
...
Рейтинг: 0 / 0
27.01.2017, 09:49
    #39392711
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Изопропилужас

Ага, волосы дыбом, от того как некоторые простейшие задачи решаются.
...
Рейтинг: 0 / 0
27.01.2017, 13:17
    #39392964
YUBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
Изопропилразмер IntPtr определить - IntPtr.Size, но проще всегда 64 бит целое использовать
ЗЫ а зачем это всё?Для работы со скриптовым языком, который вообще ничего не поддерживает, но допускает вызовы NET-объектов при полном их описании, типа System.***.***.***().
Беда в том, что скрипт циклически вызывается, и объекты при каждом вызове надо создавать заново и потом явно уничтожать. Т.е., их либо надо выгружать в оперативку, либо попытаться цепляться к повисшим объектам.
...
Рейтинг: 0 / 0
27.01.2017, 17:46
    #39393352
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
YUBA,

до конца не понятно,
ну если хочется зафиксировать net объект по его указателю - GCHandle в помощь

для объекта получаем неуправляемый указатель (не на сам объект естественно)
затем по этому указателю можно получить ссылку на собственно сам объект
...
Рейтинг: 0 / 0
27.01.2017, 19:00
    #39393418
YUBA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# - физический размер указателя на Object.
ИзопропилYUBA,до конца не понятно,..Изопропил, Ну оч просто. Представьте, что вынуждены создавать объекты в некой функции в цикле while(), и наружу их вытащить нет никакой возможности - там, за пределами функции, только int, long, double, string и все. А создавать-уничтожать при каждой итерации долго и оч не хочется.
Сейчас System.Runtime.InteropServices мучаю. Вчера ночью где-то там видел возможность выгружать объекты в неуправляемую память. Может так, пока не знаю.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# - физический размер указателя на Object. / 15 сообщений из 15, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]