Re[9]: Delphi 2009 vs C# 3.0
От: Ночной Смотрящий Россия  
Дата: 01.11.08 21:39
Оценка:
Здравствуйте, diatlov, Вы писали:

D>При попытке на пользовательской машине моего приложения узнать имя машины и список её IP-адресов вываливался exception, где писалось что-то типа у вашего приложения недостаточно прав и т.д. и т.п. Обратитесь к системному администратору или зайдите в консоль управления фреймворком и дайте ему прав скоко нада.


Бегом изучать, что такое CAS

D>Решал методом подписи приложения ч/з sn.exe (это из Windows SDK, генерит strong names). Затем на клиентской машине запускал caspol.exe -af <моя прога>


А всего то надо было не запускать с сетевого диска или прописать сетевой диск в полиси.
Re[2]: Delphi 2009 vs C# 3.0
От: Eugeny__ Украина  
Дата: 01.11.08 23:50
Оценка:
Здравствуйте, kuj, Вы писали:



kuj>Вроде бы взрослые люди, а ведётесь на столь явный троллинг...


Ой-ё, кто бы говорил . Хотя да, в троллинге ты прошаренный и очень опытный, это неопровержимый факт.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Re[4]: Delphi 2009 vs C# 3.0
От: FR  
Дата: 02.11.08 08:12
Оценка:
Здравствуйте, Константин Л., Вы писали:


КЛ>Гм. Жесть. 2 ключевых слова ради непойми чего.


КЛ>

КЛ>"case type of"

КЛ>Write a switch/case statement that executes different cases depending on the TYPE of a certain object, i.e.
КЛ>case type MyControl of:
КЛ> Edit: // do something
КЛ> Button: // do something else
КЛ>end;


Осторожно и ощупью к сопоставлению с образцом?
Re[2]: Delphi 2009 vs C# 3.0
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 02.11.08 12:27
Оценка: +1 :)
Здравствуйте, kuj, Вы писали:



kuj>Вроде бы взрослые люди, а ведётесь на столь явный троллинг...


... сказал довольный kuj, зайдя на форум под своим настоящим ником

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[7]: Delphi 2009 vs C# 3.0
От: yuriylsh  
Дата: 02.11.08 21:52
Оценка: +1
Здравствуйте, Ночной Смотрящий, Вы писали:

G>>Даже смешно как-то. 2009 версия Delphi чуть лучше C# 2.0, но вероятнее всего к концу 2009 года уже выйдет C# 4.0.


НС>Который ничем от C# 3 не отличается, окромя уродства под названием dynamic.


Ну, во-первых, не только Dynamically Typed Objects, также туда входят optional and named parameters, improved COM interoperability (это выглядело прикольно), сo- and сontra-variance. Плюс, тема concurrency, по личным впечатлениям, еще до конца не раскрыта и увидим мы это чуть позже.

Во вторых, почему dinamic это уродство? В сценариях с Silverlight, работой с COM и взаимодействия с динамическими языками очень и очень даже полезная фича.

Плюс, стоит не забывать (возможно, это и не совсем по теме топика, хотя как посмотреть), что вместе с самим языком обновления коснуться также и, так сказать, окружающие вещи, такие как новая версия ASP.NET (лично, правда, больше ожидаю ASP.NET MVC).
Luck in life always exists in the form of an abstract class that cannot be instantiated directly and needs to be inherited by hard work and dedication.
Re[3]: Delphi 2009 vs C# 3.0
От: kuj  
Дата: 03.11.08 09:45
Оценка: :)))
Здравствуйте, Eugeny__, Вы писали:

kuj>>Вроде бы взрослые люди, а ведётесь на столь явный троллинг...


E__>Ой-ё, кто бы говорил . Хотя да, в троллинге ты прошаренный и очень опытный, это неопровержимый факт.


Да ладно вам! Я исправляюсь...
Re[3]: Delphi 2009 vs C# 3.0
От: kuj  
Дата: 03.11.08 13:30
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

kuj>>Вроде бы взрослые люди, а ведётесь на столь явный троллинг...


KV>... сказал довольный kuj, зайдя на форум под своим настоящим ником


А кто сказал, что это мой настоящий ник?
Re[10]: Delphi 2009 vs C# 3.0
От: diatlov Молдова  
Дата: 03.11.08 19:33
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Бегом изучать, что такое CAS


Обязательно посмотрю что за штука )

НС>А всего то надо было не запускать с сетевого диска или прописать сетевой диск в полиси.


Ну фишка в том что диск был отнюдь не сетевой, а совсем даже жесткий.. очень )
Но у того чела винда была хз какая.. ну XP т.е., но эксплорер 6 стоял и т.д. Так что мож там сервис пак 1й был или ещё что.
Ну в любом случае я победил это ) хоть может и варварским методом
Re[10]: Delphi 2009 vs C# 3.0
От: Utruk  
Дата: 04.11.08 18:30
Оценка: :))) :))) :)))
Здравствуйте, gandjustas, Вы писали:

НС>>>Нативный компилятор Дельфи порождает код, который в большинстве случаев медленнее того, который порождает дотнетный джит.


U>>Мне пофиг что там порождает дотнетный джит и что показывают купленные бенчмарки, но почему-то серия одинаковых запросов к Ораклу стабильно выполняется в 1.5 раза медленнее. Почему-то скорость распределения и освобождения одинакового количества объектов (порядок — сотни тысяч, миллионы) в .NET менеджере памяти ни разу не было быстрее дельфийского, а если чонть в деструкторе написать то вообще туши свет.


G>Код в студию.


using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    public class TestObject
    {
        private const int ByteSize = 50;
        protected byte[] TestArray;
        public TestObject()
        {
            TestArray = new byte[ByteSize];
        }
    }

    class Program
    {
        private const int ObjectCount = 1000000;
        static void Main(string[] args)
        {
            DateTime Start = DateTime.Now;
            ArrayList Objects = new ArrayList();
            while (Objects.Count < ObjectCount)
            {
                Objects.Add(new TestObject());
            }
            DateTime Stop = DateTime.Now;
            TimeSpan Duration = Stop - Start;
            int Speed = Objects.Count % (int) Duration.TotalMilliseconds; 
            Console.WriteLine("C# Speed {0}", Speed);
        }
    }
}


program MemSpeedTest;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  Contnrs,
  DateUtils;

const
  ArraySize=50;
  ObjectCount=1000000;

type
  TTestObject=class(TObject)
  private
    FTestArray:array of byte;
  public
    constructor Create;
  end;

{ TTestObject }

constructor TTestObject.Create;
begin
  inherited Create;
  SetLength(FTestArray, ArraySize);
end;

var
  Objects:TObjectList;
  Start, Stop:TDateTime;
  Speed:Integer;
begin
  Start:=Now;
  Objects:=TObjectList.Create(TRUE);
  try
    while Objects.Count<ObjectCount do
      Objects.Add(TTestObject.Create);
    Stop:=Now;
    Speed:=Objects.Count div MillisecondsBetween(Stop, Start);
    WriteLn('Delphi speed ', Speed:6);
  finally
    FreeAndNil(Objects);
  end;
end.


Результаты выполнения на AMD Phenom 9850, Vista.

D:\Temp\SpeedTest>dir
Volume in drive D is Архив
Volume Serial Number is 7473-5721

Directory of D:\Temp\SpeedTest

04.11.2008 23:20 <DIR> .
04.11.2008 23:20 <DIR> ..
04.11.2008 23:22 5 120 MemoryTest.exe
04.11.2008 23:23 80 896 MemSpeedTest.exe
2 File(s) 86 016 bytes
2 Dir(s) 264 707 985 408 bytes free

D:\Temp\SpeedTest>MemoryTest.exe
C# Speed 250

D:\Temp\SpeedTest>MemoryTest.exe
C# Speed 64

D:\Temp\SpeedTest>MemoryTest.exe
C# Speed 446

D:\Temp\SpeedTest>MemoryTest.exe
C# Speed 100

D:\Temp\SpeedTest>MemoryTest.exe
C# Speed 505

D:\Temp\SpeedTest>MemoryTest.exe
C# Speed 352

D:\Temp\SpeedTest>MemSpeedTest.exe
Delphi speed 5181

D:\Temp\SpeedTest>MemSpeedTest.exe
Delphi speed 3378

D:\Temp\SpeedTest>MemSpeedTest.exe
Delphi speed 3105

D:\Temp\SpeedTest>MemSpeedTest.exe
Delphi speed 3906

D:\Temp\SpeedTest>MemSpeedTest.exe
Delphi speed 3703
Re[10]: Delphi 2009 vs C# 3.0
От: Utruk  
Дата: 04.11.08 18:45
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:
U>>Мне пофиг что там порождает дотнетный джит и что показывают купленные бенчмарки, но почему-то серия одинаковых запросов к Ораклу стабильно выполняется в 1.5 раза медленнее.

НС>Вот уж тут то платформа точно не при чем. ODP к дотнету оракль пишет, так что все вопросы к МС. Драйвера к MSSQL работают не медленее нативных, даже если компилировать при помощи ICC (что не удивительно, vbs/js скорее всего тоже слабо отличимый результат продемонстрируют).


Вы не поняли... запросы выполняются из под приложения написанного на Delphi через dbExpress к одной и той-же БД. Кодовая база одна и та-же. Только в одном случае оно скомпилировано в Win32 в другом случае в .NET.

U>> Почему-то скорость распределения и освобождения одинакового количества объектов (порядок — сотни тысяч, миллионы) в .NET менеджере памяти ни разу не было быстрее дельфийского


НС>А это ты, уважаемый, просто вводишь нас в заблуждение. Скорость выделения дотнета не достижима ни для каких суперменеджеров кучи (не говоря уж о менеджере дельфи), потому что это прост инкремент одного указателя и пара проверок, а освобождение памяти в дотнете просто отсутствует.


См. результаты теста. Про освобождение памяти... не смешите плиз...

U>>, а если чонть в деструкторе написать то вообще туши свет.


НС>В дотнете нет деструкторов.


От того что их переименовали, они не перестали быть деструкторами.
Re[11]: Delphi 2009 vs C# 3.0
От: Antikrot  
Дата: 04.11.08 20:03
Оценка:
Здравствуйте, Utruk, Вы писали:

сам поймешь, за что смайлики?
Re[11]: Delphi 2009 vs C# 3.0
От: Mr.Cat  
Дата: 04.11.08 22:52
Оценка:
Здравствуйте, Utruk, Вы писали:
U>От того что их переименовали, они не перестали быть деструкторами.

ИМХО, отличия деструктора в понимании, скажем, C++ от финализатора в среде с jit довольно существенны.
Re[11]: Delphi 2009 vs C# 3.0
От: _d_m_  
Дата: 04.11.08 23:24
Оценка:
Здравствуйте, Utruk, Вы писали:

U>>>Мне пофиг что там порождает дотнетный джит и что показывают купленные бенчмарки, но почему-то серия одинаковых запросов к Ораклу стабильно выполняется в 1.5 раза медленнее. Почему-то скорость распределения и освобождения одинакового количества объектов (порядок — сотни тысяч, миллионы) в .NET менеджере памяти ни разу не было быстрее дельфийского, а если чонть в деструкторе написать то вообще туши свет.


G>>Код в студию.


U>
U>            TimeSpan Duration = Stop - Start;
U>            int Speed = Objects.Count % (int) Duration.TotalMilliseconds; 
U>            Console.WriteLine("C# Speed {0}", Speed);
U>        }
U>    }
U>}
U>


А зачем здесь % — операция остатка от деления?
И нафига еще что-то делить — приведи просто милисекунды.
Re[11]: Delphi 2009 vs C# 3.0
От: Ночной Смотрящий Россия  
Дата: 04.11.08 23:26
Оценка:
Здравствуйте, Utruk, Вы писали:

U>Вы не поняли... запросы выполняются из под приложения написанного на Delphi через dbExpress к одной и той-же БД. Кодовая база одна и та-же. Только в одном случае оно скомпилировано в Win32 в другом случае в .NET.


Это ты не понял. Любые теоретически возможные тормоза по сравнению с запросом к БД — мгновение. Так что это в твоем dbExpress какие то серьезные проблемы.

U>См. результаты теста.


Тест некорректен.

U> Про освобождение памяти... не смешите плиз...


Да уж, после тебя это мне вряд ли удастся.

НС>>В дотнете нет деструкторов.


U>От того что их переименовали, они не перестали быть деструкторами.


Их не переименовывали, их просто нет.
Re[12]: Delphi 2009 vs C# 3.0
От: Ночной Смотрящий Россия  
Дата: 04.11.08 23:28
Оценка:
Здравствуйте, _d_m_, Вы писали:

___>А зачем здесь % — операция остатка от деления?


Это в очередной раз продемонстрировало уровень знаний о дотнете.
Re[12]: Delphi 2009 vs C# 3.0
От: Mr.Cat  
Дата: 04.11.08 23:34
Оценка:
Здравствуйте, Mr.Cat, Вы писали:
MC>в среде с jit

Рррр. Имел в виду "в среде со сборкой мусора", конечно. Хочу редактирование сообщений.
Re[11]: Delphi 2009 vs C# 3.0
От: _d_m_  
Дата: 04.11.08 23:47
Оценка:
Здравствуйте, Utruk, Вы писали:

НС>>А это ты, уважаемый, просто вводишь нас в заблуждение. Скорость выделения дотнета не достижима ни для каких суперменеджеров кучи (не говоря уж о менеджере дельфи), потому что это прост инкремент одного указателя и пара проверок, а освобождение памяти в дотнете просто отсутствует.


U>См. результаты теста. Про освобождение памяти... не смешите плиз...


Это там, где ты остатком от деления насмешил?

U>>>, а если чонть в деструкторе написать то вообще туши свет.


НС>>В дотнете нет деструкторов.


U>От того что их переименовали, они не перестали быть деструкторами.


От оно как!
Почитай сначала стандарт языка C#, а потом уже высказывай безапеляционные утверждения.
Re[13]: Delphi 2009 vs C# 3.0
От: Antikrot  
Дата: 05.11.08 00:11
Оценка: +1
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Это в очередной раз продемонстрировало уровень знаний о дотнете.

скорее о незнании всего кроме дельфи
Re[13]: Delphi 2009 vs C# 3.0
От: Utruk  
Дата: 05.11.08 07:42
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Здравствуйте, _d_m_, Вы писали:


___>>А зачем здесь % — операция остатка от деления?


НС>Это в очередной раз продемонстрировало уровень знаний о дотнете.


Опечатался, а он уже усирается от радости... ну поправь на деление и запусти у себя.

C:\...udio 2008\Projects\MemoryTest\MemoryTest\bin\Release>MemoryTest.exe
C# Speed 1886

C:\...udio 2008\Projects\MemoryTest\MemoryTest\bin\Release>MemoryTest.exe
C# Speed 1945

C:\...udio 2008\Projects\MemoryTest\MemoryTest\bin\Release>MemoryTest.exe
C# Speed 1831
Re[12]: Delphi 2009 vs C# 3.0
От: Utruk  
Дата: 05.11.08 07:58
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Их не переименовывали, их просто нет.


А это что тогда?

Destructors (C# Programming Guide)

Destructors are used to destruct instances of classes.

Remarks
Destructors cannot be defined in structs. They are only used with classes.
A class can only have one destructor.
Destructors cannot be inherited or overloaded.
Destructors cannot be called. They are invoked automatically.
A destructor does not take modifiers or have parameters.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.